zoukankan      html  css  js  c++  java
  • linux每日命令(7):rmdir命令

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

    一.命令格式

    rmdir [参数] 目录
    

    二.命令功能:

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

    三.命令参数:

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

    四. 命令示例

    1.删除空目录dir31

    命令:

    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 目录名 ,不能用来删除文件,也不能删除非空目录,只能用来删除单个空目录

    2. “递归”删除空目录(此“递归”指“反向递归”,删除父级空目录)

    命令:

        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 当该目录的子目录被删除后使其也成为空目录的话,则顺便一并删除该目录

    3. 显示删除过程

    命令:

    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  公共的  模板  视频  图片  文档  下载  音乐  桌面
    
    
  • 相关阅读:
    2. Add Two Numbers
    1. Two Sum
    leetcode 213. 打家劫舍 II JAVA
    leetcode 48. 旋转图像 java
    leetcode 45. 跳跃游戏 II JAVA
    leetcode 42. 接雨水 JAVA
    40. 组合总和 II leetcode JAVA
    24. 两两交换链表中的节点 leetcode
    1002. 查找常用字符 leecode
    leetcode 23. 合并K个排序链表 JAVA
  • 原文地址:https://www.cnblogs.com/huchong/p/9872761.html
Copyright © 2011-2022 走看看