每天一个linux命令:rm
2018-01-06 12:06
477 查看
每天一个linux命令:rm
更多精彩请关注:www.zicreate.com1.命令功能
rm 即 remove files or directories,删除文件或目录命令,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。rm命令可以用”-i”选项,这个选项在使用文件扩展名字符删除多个文件时特别有用。使用这个选项,系统会要求你逐一确定是否要删除。这时,必须输入y并按Enter键,才能删除文件。如果仅按Enter键或其他字符,文件不会被删除。
新手注意:
rm -rf *删除当前目录下的所有文件,这个命令很危险,应避免使用。
2.命令格式
rm (选项)(参数)3.命令参数
-d:直接把欲删除的目录的硬连接数据删除成0,删除该目录; -f:强制删除文件或目录; -i:删除已有文件或目录之前先询问用户; -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理; --preserve-root:不对根目录进行递归操作; -v:显示指令的详细执行过程。
4.使用场景
rm 命令非常简单,后面直接跟文件或目录即可。常见操作如下:
rm file.txt # 删除一个文件; rm -r /tmp/test # 删除一个目录; rm -rf /tmp/test/* # 删除目录下的所有文件;这个命令的危险之处就在于有时操作太快而稍不留意命令就会变成:“rm -rf /tmp/test/ [空格] *”!!!这种情况下将会删除/tmp/test/还有rm命令执行目录下的所有文件。如果rm命令是在“/”根目录下执行的,那么整个系统就完了。 rm *.txt # 删除当前目录下所有的txt文件 rm test[1-3].txt # 删除当前目录下的test1.txt test2.txt test3.txt; rm test{1,3,4}.txt # 删除当前目录下的test1.txt test3.txt test4.txt;
关于上面命令中通配符的讲解在前期的文章中已经有所涉及,本文不再详解。
扩展
(1)rmdirrmdir 删除空目录,一个目录被删除之前必须是空的。如果目录非空会报错。
命令格式
rmdir (命令参数) 目录名
命令参数
-p或--parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除; --ignore-fail-on-non-empty:此选项使rmdir命令忽略由于删除非空目录时导致的错误信息; -v或-verboes:显示命令的详细执行过程;
使用场景
$ rmdir /tmp/test/subdir
这个命令我基本没用过,因为 rm 已经可以完成目录删除工作了。
(2)配合find使用
在目录/tmp/test/ 下面查找文件名为”test*.txt” 类型的文件并删除:
$ find /tmp/test/ -iname “test*.txt” -exec rm {} \;
find 为查找命令,后期文章将会详解。
(3)自定义回收站功能
为了防止错误删除文件,保证所有用户都能将 rm 命令删除的文件先放入回收站,可以在/etc/profile文件最后添加如下代码:
mkdir -p ~/.trash alias rm=trash trash() { echo "File move to ~/.trash/" mv $@ ~/.trash/ }
修改后执行
# source /etc/profile重载环境变量,使修改生效(此需要root权限)。使用此种方法之后,rm 命令的各种命令参数选项就不再有效了。
如果是只想修改自己的rm命令,则修改“~/.bashrc”,同样在文件最后添加上面的代码。如果该文件中有“alias rm=’rm -i’”这样的代码,则注释掉该行(修改为“#alias rm=’rm -i’”)。
修改后执行
# source /etc/profile重载环境变量。
演示如下:
# touch test1.txt test2.txt test3.txt test4.txt # rm * # ls /root/.trash/ test1.txt test2.txt test3.txt test4.txt
如果要清空回收站可以使用如下方法:
方法1: $ /bin/rm -rf ~/.trash/* 方法2: $ \rm -rf ~/.trash/* 方法3: $ unaslias rm #(这只是临时取消rm的别名) $ rm -rf ~/.trash/*
相关文章推荐
- 每天一个linux命令(5):rm 命令
- 【每天一个Linux命令】22. 删除文件命令rm && 删除空目录命令rmdir
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个 Linux 命令(5):rm 命令------学习笔记
- 每天一个 Linux 命令(5):rm 命令
- 每天一个linux命令(8):rm
- 05-每天一个Linux命令 rm
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令-rm
- 每天学习一个linux命令(5):rm 命令
- 每天一个linux命令:rm 命令
- Linux学习17_每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm 命令
- 每天一个linux命令(5):rm命令
- 每天一个linux命令(5):rm 命令