【shell】删除指定文件名称外的全部文件
# 开启bash的extglob功能(此功能的作用就是用rm !(*jpg)这样的方式来删除不包括号内文件的文件)
rm -f !(file10) # 删除全部(除括号外的文件) 保留单个 rm -rf !(test.sh|file1.log|file2.log) # 删除全部(除括号外的文件 保留多个 rm -rf !(file5|file6|file7).txt # 删除全部.txt(除括号外的文件 保留多个.txt
# 删除txt目录下除了touchfile.sh文件外的所有文件
# 一个通过xargs传参,一个通过find的-exec执行命令参数来完成
find /xxx/txt -type f ! -name "touchfile.sh"|xargs rm -f
# find /xxx/txt -type f ! -name "touchfile.sh" -exec rm -f {} \;
运行结果
-------------------------------------------------------------------------------------
如果万事开头难 那请结局一定圆满 @ Phoenixy
-------------------------------------------------------------------------------------
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现