Linux下使用rm删除文件,并排除指定文件

Linux下使用rm删除文件,并排除指定文件

大家好,又见面了,我是全栈君。

推荐文章

Linux 最常用命令整理,建议收藏!

linux ss 命令用法说明

如何配置Linux系统的IP地址?

Linux TCP状态TIME_WAIT 过多的处理

Linux下使用rm删除文件,并排除指定文件

   rm是我们在Linux下删除文件经常用到的命令,但是有时候我们目录下有很多个文件想要删除,偏偏却要保留其中1个或几个文件,那怎么办呢?很多新手朋友可能会采取一个一个文件删除的方法来操作,但是如果文件很多呢?删到啥时候啊~~

 

今天我们就来教大家使用rm命令删除文件的时候如何排除指定的文件(不删除指定文件)。首先我们来看一下平时我们是怎么使用rm命令的。

1、删除单个文件

rm 1.txt
2、强制删除文件,无需确认
rm -rf 1.txt
3、删除文件夹
rm -rf mydir
4、删除目录下全部文件,包括文件夹
rm -rf *
5、删除全部文件,但保留1.txt
rm -rf !(1.txt)

正常情况下是全部文件被删除了,只留下了1.txt,但是有时候我们的系统没配置好,可能会报错,例如下面这种:

root@abc:/home/# rm -rf !(1.txt)
-bash: !: event not found

上面这种情况是因为我们的系统没有开启通配符功能,我们执行下面的命令开启通配符功能先:

shopt -s  extglob
查看通配符功能是否开启,on表示已经开启
shopt -s

Linux下使用rm删除文件,并排除指定文件

然后我们再次执行前面的命令就可以看到文件已经全部删除了,只保留了1.txt

rm -rf !(1.txt)

6、删除全部文件,保留1.txt和2.txt

rm -rf !(1.txt|2.txt)

上面我们说的都是直接用rm + !(叹号)来排除文件的,下面我们搞个高深一点的,用find + grep + xargs三个命令一起用

7、删除全部文件,保留1.txt

find * | grep -v 1.txt | xargs rm

这里我们要特别注意grep的-v参数,-v参数表示反选,比如我们上面指定了-v 1.txt,即排除掉1.txt,选中其他全部文件。所以这样执行之后1.txt就被排除了

8、删除全部文件,保留1.txt和2.txt

find * | grep -v '\(1.txt\|2.txt\)' | xargs rm

这里要特别留意,括号()跟括号内的竖线|需要添加\进行转义,否则会报错

今天讲的就这些,都是非常实用的技巧,大家赶紧动手试试吧

Linux下使用rm删除文件,并排除指定文件

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/111659.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • vue中 父组件向子组件传值案例讲解「建议收藏」

    vue中 父组件向子组件传值案例讲解「建议收藏」父组件向子组件传值通过父组件传值调用子组件显示不同的数据

  • Maven下载安装

    Maven下载安装

  • java视频教程免费下载

    java视频教程免费下载Java视频教程孙鑫Java无难事(全12CD)Java视频教程即学即会java上海交大Java初级编程基础共25讲下载avi格式吉林大学Java程序设计视频教程48讲+2讲辅导csf格式尚学堂Java视频教程J2SE5.0马士兵主讲高清avi格式张孝祥Java课堂系列之Tomcat入门(七讲swf)张孝祥Java课堂系列

  • vim编辑器重要快捷键及vim设置「建议收藏」

    vim编辑器重要快捷键及vim设置「建议收藏」1.全选:ggVG2.跳转到文本最后一行:shift+g3.跳转到文本第一行:gg4.跳转到光标所选行的行首位置:05.跳转到光标所选行的行尾位置:shift+46.全部替换(替换无需确认)::%s/src/dst/g7.全部替换(每次替换需要确认)::%s/src/dst/gc8.查找:/string9.高亮显示查找到的内容::sethlsearch10.显示vim行号::setnu!11.到注释的开始:[/12.到注释的结束:]/13.撤销上一次操作:

  • phpstorm2020激活码【2021最新】[通俗易懂]

    (phpstorm2020激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html00OE5RWT28-eyJsa…

  • Python爬虫入门项目

    Python是什么Python是著名的“龟叔”GuidovanRossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。创始人GuidovanRossum是BBC出品英剧MontyPython’sFlyingCircus(中文:蒙提·派森的飞行马戏团)的狂热粉丝,因而将自己创造的这门编程语言命名为Python。人生苦短,我用python,翻译自”L…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号