rm-rf命令删除多个文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rm-rf命令删除多个文件相关的知识,希望对你有一定的参考价值。

参考技术A 答,linux中rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。

参数

rm (选项)(参数)

-i 删除的时候会提示是否确认删除,一次删除多个文件则每一个文件都会提醒

-I 一次删除多个文件(大于三个),提示消息只提示一次

-r 递归删除,用于删除目录:

-d 用于删除空目录,如果目录不为空,则无法删除

-f 强制删除,不弹出任何提示,慎用

实例

1. 删除当前目录下除隐含文件外的所有文件和子目录

rm -r * //这样删除数据做是非常危险的

2. 交互模式下删除文件

rm -i test.trc

rm: remove regular file `test.trc'? y //输入y删除文件 n不删除文件

removed `test.trc'

3. 递归删除某个目录下文件以及子目录

rm -rf tomcat/ //删除tomcat下所有的文件及子目录

4. 删除当前目录下的所有trc文件类型的文件

rm -v *.trc

5. 删除当前目录下所有.bin目录,删除前逐一询问确认

rm -i *.bin

Linux系统没有回收站,rm删除就永远找不到了,删除的时候,最好用绝对路径,比较保险。

Linux rm命令

rm命令

rmdir命令比较局限,只能删除非空的目录,更不能删除文件.rm命令就比较牛逼,可以删除任何目录和文件.需要一些牛逼的选项!

rm -rf / 这个命令绝对不能敲 !!!!

rm -rf / 这个命令绝对不能敲 !!!!

rm -rf / 这个命令绝对不能敲 !!!!

1. 删除文件

[[email protected] ~]# rm /tmp/allin/2/3/1.txt rm:是否删除普通空文件 "/tmp/allin/2/3/1.txt"?y
[[email protected] ~]# tree /tmp/allin/tmp/allin
├── 1│   └── 2└── 2
    └── 34 directories, 0 files
  • 删除非空目录

[[email protected] ~]# rm /tmp/allin/2/3rm: 无法删除"/tmp/allin/2/3": 是一个目录
[[email protected] ~]# rm /tmp/allin/2/3/1.txt  2.txt  
[[email protected] ~]# rm /tmp/allin/2/3/1.txt  2.txt  
[[email protected] ~]# rm /tmp/allin/2/3/*.txt
rm:是否删除普通空文件 "/tmp/allin/2/3/1.txt"?n
rm:是否删除普通空文件 "/tmp/allin/2/3/2.txt"?n
  • 每次都要询问,文件多的时候,会很麻烦. -f选项,是强制删除,没有询问.

[[email protected] ~]# tree /tmp/allin//tmp/allin/
├── 1│   └── 2└── 2
    └── 3
        ├── 1.txt
        └── 2.txt4 directories, 2 files
[[email protected] ~]# rm -f /tmp/allin/2/3/*.txt
[[email protected] ~]# tree /tmp/allin/
/tmp/allin/
├── 1
│   └── 2
└── 2
    └── 3

4 directories, 0 files

2. 删除目录

[[email protected] ~]# rm /tmp/allin/2/3/rm: 无法删除"/tmp/allin/2/3/": 是一个目录

还是会报错.因为是非空目录.

  • 需要 -r 选项

[[email protected] ~]# rm -r /tmp/allin/2/3/rm:是否删除目录 "/tmp/allin/2/3/"?y
[[email protected] ~]# !treetree /tmp/allin/
/tmp/allin/
├── 1│   └── 2└── 23 directories, 0 files
  • 不想询问,加上-f选项

[[email protected] ~]# rm -rf /tmp/allin/2[[email protected] ~]# !treetree /tmp/allin/
/tmp/allin/
└── 1
    └── 22 directories, 0 files
  • 可视化,加上-v选项

[[email protected] ~]# rm -rfv /tmp/allin/1已删除目录:"/tmp/allin/1/2"已删除目录:"/tmp/allin/1"[[email protected] ~]# ls /tmp/allin/[[email protected] ~]# !treetree /tmp/allin/
/tmp/allin/0 directories, 0 files

-f选项很牛逼,但是一定要慎用.

-f选项的一些不足之处

  • 删除根本不存在的目录,也不会报错,易造成混淆.

[[email protected] ~]# tree /tmp/allin/tmp/allin0 directories, 0 files
[[email protected] ~]# rm -f /tmp/allin/2

拓展知识

  1. history命令,用户查看之前用过的命令的历史记录.

技术分享

  1. !+命令,快速使用最近一次的命令.

[[email protected] ~]# !treetree /tmp/allin
/tmp/allin0 directories, 0 files
[[email protected] ~]# !lsls /tmp/allin/
[[email protected] ~]# !historyhistory    1  ls    2  ls /tmp    3  ls /boot    4  ls /    5  dhclient


本文出自 “Linux之路” 博客,请务必保留此出处http://allin28.blog.51cto.com/12931477/1933846

以上是关于rm-rf命令删除多个文件的主要内容,如果未能解决你的问题,请参考以下文章

Linux删除文件的命令?

rm-rf无法删除文件夹

Linux 删除文件夹和文件的命令

20140412

Linux 删除文件夹和文件的命令

ubuntu常用命令