Linux下删除某个文件之外的其他所有文件

在windows下要删除一个文件夹下除某个文件之外的其他所有文件很简单,选择这个文件,再反选即可。Linux下可能很多人不知道如何实现这种效果,这里分享2种方法:

1 使用xargs

ls | grep -v xxx | xargs rm -r

使用时将xxx替换成要保留的文件名即可。

如果有相似的文件名,可以使用正则表达式匹配完整的文件名,如:

有两个相似的文件名33和331,此时要保留33删除331就需要全匹配
ls | grep -v "^33$" | xargs rm -r

其中的^表示匹配开头位置,$表示匹配结束位置。

2 rm -rf !()

rm -rf !(xxx)

此命令表示删除xxx之外的所有其他文件(包括文件夹)。
注意,-f参数表示此命令删除时没有提示,删除前请务必确保要删除的文件是不再需要的。

此命令在低版本的bash下可能会不生效(实测4.2版本可以正常使用),如果不生效请参考方法1。

相关推荐
优橙教育5 分钟前
5G网优工程师证书怎么选:HCSP/HCIA/5G认证全解析
运维·服务器
国产化创客33 分钟前
Kindle完整越狱改造:从闲置泡面盖到Linux开发与智能家居终端
linux·运维·物联网·嵌入式·智能家居·智能硬件
qetfw44 分钟前
CentOS 7 搭建 MariaDB 数据库服务
linux·数据库·centos·mariadb
皮卡狮1 小时前
进程的地址空间
linux
田里的水稻1 小时前
FA_数字相机成像原理、分级和分类
运维·数码相机·机器人·自动驾驶
Darkwanderor2 小时前
动、静态库相关内容的详细介绍
linux·c语言·开发语言·c++
极客先躯2 小时前
高级java每日一道面试题-2026年04月18日-实战篇[Docker]-如何处理金融行业的时序数据容器化?
java·运维·docker·容器·金融·时序数据·高级面试
运维大师3 小时前
【K8S 运维实战】01-K8s架构深度剖析
运维·架构·kubernetes
HackTwoHub3 小时前
等级保护现场测评系统重磅更新,支持 AI 接入,可录入全品类资产清单,自动化巡检核查,批量导出测评归档文件
运维·人工智能·安全·web安全·网络安全·自动化·系统安全
2401_858286113 小时前
OS79.【Linux】POSIX信号量
linux·运维·服务器