您的位置:首页 > 运维架构 > Linux

每天进步一点点——linux——rm

2015-06-15 11:10 525 查看


郑重声明:由于本人水平有限,如有不对的地方请大神指正不甚感激(327568824@qq.com)

一            简介

rm命令是用来删除文件或者目录的,但是由于rm命令非常危险,所以大家使用的时候一定要小心(千万别rm
–rf /*)

二            命令格式

rm [选项] 文件

三            常用参数

-f, --force         
    强制删除。忽略不存在的文件,不提示确认

-i                   
在删除前需要确认(默认)

-I                   
在删除超过三个文件或者递归删除前要求确认。此选项比-i


                    
示内容更少,但同样可以阻止大多数错误发生

-r, -R, --recursive  
     递归删除目录及其内容

 
-v,--verbose         详细显示进行的步骤

默认时,rm
不会删除目录。使用--recursive(-r
或-R)选项可删除每个给定

的目录,以及其下所有的内容。

 

要删除第一个字符为"-"的文件
(例如"-foo"),请使用以下方法之一:

 
rm-- -foo

 
rm./-foo

 

请注意,如果使用rm
来删除文件,通常仍可以将该文件恢复原状。如果想保证

该文件的内容无法还原,请考虑使用shred。

四            所有参数

 

 
-f,--force           强制删除。忽略不存在的文件,不提示确认

 -i                   
在删除前需要确认

 -I                   
在删除超过三个文件或者递归删除前要求确认。此选项比-i


                       
示内容更少,但同样可以阻止大多数错误发生

     --interactive[=WHEN]     
根据指定的WHEN
进行确认提示:never,once (-I),

                               
或者always (-i)。如果此参数不加WHEN
则总是提示

     --one-file-system        
递归删除一个层级时,跳过所有不符合命令行参

                               
数的文件系统上的文件

     --no-preserve-roo
不特殊对待"/"

     --preserve-root  
不允许删除"/"(默认)

 
-r,-R, --recursive   递归删除目录及其内容

 
-v,--verbose         详细显示进行的步骤

     --help           
显示此帮助信息并退出

     --version        
显示版本信息并退出默认时,rm不会删除目录。使用--recursive(-r
或-R)选项可删除每个给定

的目录,以及其下所有的内容。

 

要删除第一个字符为"-"的文件
(例如"-foo"),请使用以下方法之一:

 
rm-- -foo

 
rm./-foo

 

请注意,如果使用rm
来删除文件,通常仍可以将该文件恢复原状。如果想保证

该文件的内容无法还原,请考虑使用shred。

 

五            示例

5.1     
删除一个文件

[bzfys@Nagiost11]$ ls

t12 t13 
t14  t99

[bzfys@Nagiost11]$ rm t99

5.2  删除t8的子目录

[bzfys@Nagios~]$ tree t8/

t8/

└── t9

   
└── t10

       └── t11

           ├── t12

           ├── t13

           └── t14

               
├── t15

               
├── t16

               
├── t17

               
│??
├── t18

               
│??
└── t19

               
├── t20

               
│??
├── t21

               
│??
└── t22

               
└── t23

                   
└── t24

                       
├── t25

                       
└── t26

 

18 directories, 0 files

[bzfys@Nagios~]$ rm -rf t8/*

[bzfys@Nagios~]$ tree t8/

t8/

 

0 directories, 0 files

5.3  删除带有横杠的文件

 

[bzfys@Nagios-ff]$ ls

-aaa

[bzfys@Nagios-ff]$ rm -aaa


rm:无效选项 -- a

尝试使用"rm ./-aaa"删除文件"-aaa"。

请尝试执行"rm --help"来获取更多信息。

[bzfys@Nagios-ff]$ rm ./-aaa

5.4  自定义回收站功能

自定义回收站

[bzfys@Nagios-ff]$ myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D&& echo "moved to $D ok"; }

创建别名

[bzfys@Nagios-ff]$ alias rm='myrm'

创建3个文件

[bzfys@Nagios-ff]$ touch t1 t2 t3

[bzfys@Nagios-ff]$ ll

总用量 0

-rw-rw-r-- 1 bzfys bzfys 0 6月 
15 10:55 t1

-rw-rw-r-- 1 bzfys bzfys 0 6月 
15 10:55 t2

-rw-rw-r-- 1 bzfys bzfys 0 6月 
15 10:55 t3

删除3个文件

[bzfys@Nagios-ff]$ rm t[123]

moved to /tmp/20150615105624 ok

查看回收站里是否有这些资源

[bzfys@Nagios~]$ ls /tmp/20150615105624/

t1 t2 
t3

 

六            参考资料

http://vbird.dic.ksu.edu.tw/

http://gnu.org/licenses/gpl.html

man手册

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: