rm

rm – remove files or directories

删除指定的文件或目录。默认情况下不能删除目录,要删除目录需指定 -r 选项。

语法

       rm [OPTION]... FILE...

[选项]

-f, –force : 忽略不存在的文件或目录,不进行删除前的确认提示。

-i : 删除每个文件或目录前都进行确认提示。

-I : 删除多余3个文件或目录时只进行一次确认提示。

-r, -R, –recursive : 递归删除目录中的所有文件。

[参数]

要删除的文件或目录

[实例]

[root@z-dig ~]# mkdir test_rm
[root@z-dig ~]# cd test_rm
[root@z-dig test_rm]# mkdir -p ./dir1/{dir3,dir4}
[root@z-dig test_rm]# touch ./dir1/{1,2,3}.txt
[root@z-dig test_rm]# touch ./dir1/dir3/{4,5}.txt

[root@z-dig test_rm]# tree ./
./
└── dir1
    ├── 1.txt
    ├── 2.txt
    ├── 3.txt
    ├── dir3
    │   ├── 4.txt
    │   └── 5.txt
    └── dir4

3 directories, 5 files
[root@z-dig test_rm]# 
[root@z-dig test_rm]# ls
dir1
[root@z-dig test_rm]# cd dir1/
[root@z-dig dir1]# ls
1.txt  2.txt  3.txt  dir3  dir4
[root@z-dig dir1]# 

[root@z-dig dir1]# rm 1.txt
rm: remove regular empty file `1.txt'? y
[root@z-dig dir1]# ls
2.txt  3.txt  dir3  dir4
[root@z-dig dir1]# 
[root@z-dig dir1]# rm dir4
rm: cannot remove `dir4': Is a directory
[root@z-dig dir1]# 

[root@z-dig dir1]# rm -r dir4
rm: remove directory `dir4'? y
[root@z-dig dir1]# 
[root@z-dig dir1]# ls
2.txt  3.txt  dir3
[root@z-dig dir1]# ls dir3
4.txt  5.txt
[root@z-dig dir1]# rm -rf dir3
[root@z-dig dir1]# ls
2.txt  3.txt
[root@z-dig dir1]# 
[root@z-dig dir1]# ls
2.txt  3.txt
[root@z-dig dir1]# touch 8.txt
[root@z-dig dir1]# touch 9.txt
[root@z-dig dir1]# ls
2.txt  3.txt  8.txt  9.txt
[root@z-dig dir1]# 
[root@z-dig dir1]# rm -I ./*
rm: remove all arguments? y
[root@z-dig dir1]# ls
[root@z-dig dir1]# 
[root@z-dig dir1]# alias rm
alias rm='rm -i'
[root@z-dig dir1]# 

  在生产环境中不建议直接使用 rm 命令直接删除文件或目录。可以使用 find 进行精确匹配查找并验证后再使用rm进行删除。也可以通过编写rm脚本并替换原有rm命令(备份原rm命令)的方法实现回收站的功能,定期删除回收站的内容,防止误删。



正文部分到此结束

转载请注明原文链接 http://www.z-dig.com/rm.html