尽量不要使用 rm -rf删除文件
[root@localhost~]# mkdir -p /home/demo1/123
[root@localhost~]# hpath="home/demo1/123"
[root@localhost~]# echo $hpath
home/demo1/123
[root@localhost~]# touch /home/demo1/123/1.log
[root@localhost~]# lpath="/home/demo1/123/1.log"
[root@localhost~]# rm -rf lpath
[root@localhost~]# ll /home/demo1/123
total 0
解释:第二行代码是给hpath赋值,第四行显示hpath的值,有$符号,表示该参数的值。第七行代码rm -rf lpath 移除1.log这个文件。如果令 lpath=”“后执行第七行代码,就会导致从根目录开始删除文件,会造成系统里面没有文件。
解决方法
if [ "${lpath}x" == "x" ];then
echo "危险!退出!"
exit
else
rm -rf $jpath
先判断一下lpath是否为空,如果为空,就返回提示,并且退出操作;否则继续执行删除指令。