linux每日命令(7):rmdir命令

匿名 (未验证) 提交于 2019-12-02 21:53:52

rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的。(注意,rm - r dir命令可代替rmdir,但是有很大危险性。)删除某目录时也必须具有对父目录的写权限。

rmdir [参数] Ŀ¼

该命令从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对父目录的写权限。

参数 描述
-p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。
-v --verbose,显示指令执行过程

命令:

rmdir dir31

输出:

hc@hc-virtual-machine:~$ tree test1/ test1/ ├―― dir1    ├―― dir11    └―― file1 └―― dir2    └―― dir21 └―― dir3     └―― dir31  4 directories, 1 file hc@hc-virtual-machine:~$ rmdir test1/dir1/file1 rmdir: 删除 'test1/dir1/file1' 失败: 不是目录 hc@hc-virtual-machine:~$ rmdir test1/dir3 rmdir: 删除 'test1/dir3' 失败: 目录非空 hc@hc-virtual-machine:~$ rmdir test1/dir3/dir31 hc@hc-virtual-machine:~$ tree test1/ test1/ ├―― dir1    ├―― dir11    └―― file1 └―― dir2    └―― dir21 └―― dir3

说明:

rmdir 目录名 ,不能用来删除文件,也不能删除非空目录,只能用来删除单个空目录

命令:

    rmdir -p test1/dir2/dir21/

输出:

hc@hc-virtual-machine:~$ tree test1/ test1/ ├―― dir1    ├―― dir11    └―― file1 └―― dir2     └―― dir21  4 directories, 1 file hc@hc-virtual-machine:~$ rmdir -p test1/dir2/dir21/ rmdir: 删除目录 'test1' 失败: 目录非空 hc@hc-virtual-machine:~$ tree test1/ test1/ └―― dir1     ├―― dir11     └―― file1  2 directories, 1 file

说明:
删除dir2目录下的dir21目录,如果删除后,dir21目录的父级目录为空目录,则删除其父级目录dir2,如果dir2的目录被删除后,test1目录为空目录,则接着删除,直到遇到父级目录不为空目录,则停止删除

rmdir -p 当该目录的子目录被删除后使其也成为空目录的话,则顺便一并删除该目录

命令:

rmdir -pv test1/dir1/dir11/

输出:

hc@hc-virtual-machine:~$ ls PycharmProjects  snap  test1  公共的  模板  视频  ͼƬ  文档  下载  音乐  桌面 hc@hc-virtual-machine:~$ tree test1/ test1/ └―― dir1     └―― dir11 hc@hc-virtual-machine:~$ rmdir -pv test1/dir1/dir11/ rmdir: 正在删除目录 'test1/dir1/dir11/' rmdir: 正在删除目录 'test1/dir1' rmdir: 正在删除目录 'test1' hc@hc-virtual-machine:~$ ls PycharmProjects  snap  公共的  模板  视频  ͼƬ  文档  下载  音乐  桌面
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!