慎用rm--在find 变量|xargs rm引用未定义的变量致所有查找到的被删除

回复 收藏
find / -name "$newvm*" |xargs rm  ##命令很简单,按条件将查找到的所有文件及目录删除
##此 newvm变量为我其它脚本中自定义的一个变量,但newvm这个变量未在包含这条命令的脚本中定义,那就意味着$newvm变量为空值,所以此命令一经执行,此命令find / -name "$newvm*" |xargs rm 就变为 find / -name " *" |xargs rm,意思是将所有的文件全查找出来并删除了,后果相当严重呀。。。。。。哎,追悔莫及呀。。。但好在这一切是在测试机环境呀,但可惜了我的脚本呀,所以
第一,一定要慎用rm
第二,定义变量后一定要在引用此变量前判断下其是否为空值
第三,就此find |xargs rm时,一定先要测试find结果
2015-12-04 10:33 举报
已邀请:
0

乐橙306

赞同来自:

rm 任何时候  使用时都要小心  
0

loveyouhyf

赞同来自:

乐橙306 发表于 2015-12-4 21:35
rm 任何时候  使用时都要小心

嗯嗯。

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: