linux命令系列-rm(删除)

2018-04-16 18:47:05

rm命令可以用来删除文件和目录 

###bash###
#常用命令选项
#默认直接删除
-r/R    #递归删除目录及文件
-i      #交互提示
-f      #不提示,忽略不存在的文件
-d      #删除空目录

例子:

###bash###
#删除aaa文件
rm aaa

#删除dir空目录
rm -d dir

#删除dir目录以及里面的所有文件(危险)
rm -rf dir
rm -rf dir/

#只删除dir目录里面的可见文件(危险)
rm -rf dir/*

#删除dir目录里面的可见文件和隐藏文件(删除全部)(危险)
rm -rf dir/* dir/.*
[root@192 tmp]# ll | sed -e '1d' -e '4d' |  awk '{print $9}'
1_aa
test_aa
test_ab
xaa
xab

#配合其他命令删除文件
#此时会删除上面5个文件
rm -f `ll | sed -e '1d' -e '4d' |  awk '{print $9}'`

-- 可以将下面紧跟着的字符当做字符串而不是参数,这样就可以避免 rm 将连字符开头的文件名解析为参数,详情可以参照 linux c解析命令行选项

如果直接删除会报错

[root@192 tmp]# rm '-p'
rm: invalid option -- 'p'
Try 'rm ./-p' to remove the file ‘-p’.
Try 'rm --help' for more information.
#删除文件名为 -p 文件
rm -- -p


总结: 

很多发行版可能已经设置了命令别名,比如本人的centos7通过alias命令查看会看到这么一句alias rm='rm -i',所以当我们使用rm命令时(其实相当于使用rm -i)则当不带上-f选项时都会提示你是否删除

上面的这些例子已经能应付大部分场景了,更多详细用法请通过命令man rm自行查阅 如有疑问可在评论区留言

备注:

  1. linux爱好者欢迎进群讨论722400045  
  2. 本系列命令都在centos7里测试,其他发行版如ubuntu,debian,fedora,opensuse等可能略微不同  
  3. 觉得本文有帮助的小伙伴可以关注笔者

 

本文禁止转载

©著作权归作者所有
收藏
推荐阅读
简介
天降大任于斯人也,必先苦其心志。