rm删除某文件之外的所有文件

1、rm -rf !(1.txt) 删除1.txt之外的所有文档,必须在文件夹内执行

2、rm -rf [^1]* 删除不是1开头之外的文件,不能加‘‘

3、ls |grep -v ‘1.txt‘ |xargs rm

4、find ./ -type f |grep -v ‘1.txt‘ |xargs rm

5、find ./ -type f \! -name "1.txt" -exec rm -rf {} \;

原文地址:https://www.cnblogs.com/zhouguanglu/p/10214618.html

时间: 2024-10-13 19:57:20

rm删除某文件之外的所有文件的相关文章

centos 删除指定文件之外的其他文件

linux下删除指定文件之外的其他文件 一.Linux下删除文件和文件夹常用命令如下: 删除文件: rm file  www.2cto.com 删除文件夹: rm -rf dir 需要注意的是, rmdir 只能够删除 空文件夹. 二.删除制定文件(夹)之外的所有文件呢? 1.方法1,比较麻烦的做法是: 复制需要保留的文件到其他文件夹,然后将该目录删除, 然后将需要保留的移动 回来. mv keep ../ #保留文件(夹) keep rm -rf * #删除当前文件夹里的所有文件 mv ../

Linux Centos 删除除某(多)个文件之外的所有文件

通常我们通过rm -rf  *可以直接强制删除当前文件夹里面的所有内容,但是有些时候我们需要保留一些文件,就比如,网站转移更新需要保留程序压缩包等就需要用到在linux centos环境下需要删除除某(多)个文件之外的所有文件的功能了.具体方法如下: rm -f  !(a) 如果保留a和b,可以运行rm -f !(a|b)来实现,不过一般bash中运行后会提示 "-bash: !: event not found " 可以通过运行:shopt -s extglob 来解决. set命令

linux删除文件夹下除了某一个文件之外的所有文件及find用法

原文: https://www.jb51.net/article/99319.htm 比如一个目录下有1,2,3,4,5这五个文件,现在我需要删除除了2以外的所有文件,那么我可以使用 find . ! -name 2 -exec rm -f {} \; 当然你还可以配合着 -maxdepth 来更精准的删除了. 下面演示删除的范围仅限于当前目录. find . -maxdepth 1 ! -name 2 -exec rm -f {} \; find . -mindepth 3 -maxdepth

Linux删除除了某些文件之外的所有文件(夹)

例如:删除当前目录下除了.tar.gz和.py结尾的其他文件 shopt -s extglob rm -rf !(*.py|*.tar.gz)

rm删除某个文件之外的文件

1.列出排除hns_dsaf_mac.c文件之外的.c文件 ls drivers/net/ethernet/hisilicon/hns/*.c |egrep -v '(hns_dsaf_mac.c)' 2.删除hns_dsaf_mac.c文件之外的.c文件 rm `ls drivers/net/ethernet/hisilicon/hns/*.c |egrep -v '(hns_dsaf_mac.c)'` 原文地址:https://www.cnblogs.com/dakewei/p/985518

linux 如何删除文件夹下面的文件和文件夹,只保留两个文件

# 删除目录下那两个文件之外的所有文件 find dir/ -type f ! -name file1 -a ! -name file2 | xargs rm -f # 删除所有空目录(非空目录不会被删除,但是会出错误信息,可以忽略) find dir/ -type d | xargs rmdir -p 使用bash shell删除目录中的特定文件的3种方法_linux shell_脚本之家http://www.jb51.net/article/51575.htm

【Linux】linux中删除指定文件外所有其他文件(夹)的问题

今天碰到要删除指定文件(夹)外的其他文件的问题.网上查到的方法是这样的 需要在当前文件夹中进行: rm -rf !(keep) #删除keep文件之外的所有文件 rm -rf !(keep1|keep2) #删除keep1和keep2文件之外的所有文件 在Ubuntu14.04下有个大坑,keep1和keep2与“|"之间千万不能留空格,就是!(keep1 | keep2).这样的话会删除当前文件夹内的所有文件. 应该这样写(keep1|keep2). 具体原因未知,等慢慢寻找.以后再来补充.

如何在 Bash 中删除“除某些文件外的所有文件”?

我的一位同事曾经问过我这样一个问题:在 Linux 下,如何 删除目录中除某些文件之外的所有文件?当时,我告诉他可 以通过模式匹配的方法解决.但其实,除此之外,还有其他 的方法,正所谓"条条大路通罗马".让我们来逐一看看. 假设要删除 ~/Downloads 目录中除 *.iso 和 *.zip 外的 所有文件,那么在 bash 中可以按以下方法处理: 方法1:模式匹配法 shopt -s extglob # 确认开启 extglob 选项 cd ~/Downloads rm -v !

find结合rm删除大量文件

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://navarro.blogbus.com/logs/31502374.html 例:删除/home/raven下,包括子目录里所有名为abc.txt的文件: find /home/raven -name abc.txt | xargs rm -rf 如果不使用xargs,则为: find /home/raven -name abc.txt -exec rm -fv {} \; 另外搜到一篇linuxsir上的文章很详细的