linux基本功--最危险的命令rm
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux基本功--最危险的命令rm相关的知识,希望对你有一定的参考价值。
1、前言
今天我们一起来探讨第7个命令,rm命令, 这个命令也可以归类到文件管理命令中。
要学会游泳,就必须下水。——列宁
To learn to swim, you must be in the water。
2、rm命令是什么?
rm命令是英文单词remove的缩写,其功能是用于删除文件或目录,一次可以删除多个文件,或递归删除目录及其内的所有子文件。
当然这是一个很危险的命令,使用的时候要特别当心,尤其对于新手更要格外注意,如执行rm -rf /*命令则会清空系统中所有的文件,甚至无法恢复回来。
一般情况下我们会要求:
不要使用 -f 这个参数,确保删除的时候有提示。
把需要删除的文件,先移到某个目录,等待段时间,确认不需要的时候再删除
使用-rf参数的时候,尽量不要使用通配符,确保安全。
3、rm的常用参数
-f 强制删除(不会询问是否删除)
-i 删除前会询问是否操作
-r/R 递归删除
-v 显示指令的详细参数
4、应用示范案例
实验环境
[root@mufenggrow test]# touch 1..3.txt
# 创建3个文件
[root@mufenggrow test]# mkdir a b c
#创建3个目录
[root@mufenggrow test]# ls
1.txt 2.txt 3.txt a b c
[root@mufenggrow test]# cp /etc/passwd a
[root@mufenggrow test]# ls
1.txt 2.txt 3.txt a b c
[root@mufenggrow test]#
当前的目录结构:
4.1.不加任何参数直接删除
[root@mufenggrow test]# rm 1.txt
rm:是否删除普通空文件 "1.txt"?y
4.2. 删除目录需要加 -r参数
[root@mufenggrow test]# rm b
rm: 无法删除"b": 是一个目录
[root@mufenggrow test]# rm -r b
rm:是否删除目录 "b"?y
[root@mufenggrow test]#
可以看到不加 -r参数删除目录会报错。
删除有内容的目录:
[root@mufenggrow test]# rm -r a
rm:是否进入目录"a"? y
rm:是否删除普通文件 "a/passwd"?n
rm:是否删除目录 "a"?n
[root@mufenggrow test]#
可以看到如果目录中有内容会先进入目录,提示目录中的内容是否删除
4.3. 没有任何提示,直接删除 -rf参数
[root@mufenggrow test]# ls
2.txt 3.txt a c
[root@mufenggrow test]# rm -rf a
[root@mufenggrow test]# ls
2.txt 3.txt c
4.4. 强制删除的时候加 -i 参数,会增加提示
[root@mufenggrow test]# rm -rfi c
rm:是否删除目录 "c"?y
4.5. 与rm有关的简单脚本
脚本思路:
让用户确认是否删除
如果用户确认删除就先备份
如果用户不删除就退出
如果用户没有按规定输入信息就提示并退出
#!/bin/bash
read -p “是否删除(Y/N)”input
if [ $input == "Y" -o $input == "y" ];then
mv $1 /tmp
echo“$1文件已备份到/tmp"
elif [ $input == "N" -o $input == "n"];then
echo"正在退出..."
else
echo“请输入正确的字符"
exit
fi
5、总结
以上就是关于rm命令的所有用法,建议把-i参数列为必用参数,什么时候都可以加上,这样系统会提示是否删除,增加了安全性。
以上是关于linux基本功--最危险的命令rm的主要内容,如果未能解决你的问题,请参考以下文章