• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >linux shell > Shell中删除某些文件外所有文件的3个方法

Shell中删除某些文件外所有文件的3个方法

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了shell命令删除文件,shell 删除文件,shell 删除文件夹,shell脚本删除文件,shell 删除空文件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

我的一位同事曾经问过我这样一个问题:在 Linux 下,如何 删除目录中除某些文件之外的所有文件?当时,我告诉他可 以通过模式匹配的方法解决。但其实,除此之外,还有其他 的方法,正所谓“条条大路通罗马”。让我们来逐一看看。

假设要删除 ~/Downloads 目录中除 *.iso 和 *.zip 外的 所有文件,那么在 bash 中可以按以下方法处理:

方法1:模式匹配法

shopt -s extglob # 确认开启 extglob 选项
cd ~/Downloads
rm -v !(*.iso|*.zip)
!(pattern list) 的作用是匹配除 pattern list 之外 的文件。
</div>

方法2:设置变量法

在 bash 中,GLOBIGNORE 可用来设置要忽略的模式匹配 文件,多个模式通过 : 分隔。
cd ~/Downloads
export GLOBIGNORE=*.zip:*.iso
rm -v *
unset GLOBIGNORE
</div>

方法3:find 搜索法

熟悉 find 的朋友想必知道,find 的威力异常强大,因此 利用它也可解决此问题。

cd ~/Downloads
find . -type f -not \( -name '*.zip' -or -name '*.iso' \) -delete
</div>

不过还是要提醒大家,rm 操作是非常危险的,切勿炫技,如果你不放心,那么可以先老老实实的逐个或分批删除,也要比事后找回方便的多。

</div>

您可能想查找下面的文章:

  • Shell命令批量修改图片文件名
  • Shell中删除某些文件外所有文件的3个方法

相关文章

  • Shell实现的一些数学运算自定义函数分享
  • shell脚本学习指南[一](Arnold Robbins & Nelson H.F. Beebe著)
  • shell统计pv和uv、独立ip的方法
  • shell两个文件去重的多种姿势
  • shell中删除文件中重复行的方法
  • linux脚本实现自动发送和收取邮件的设置方法
  • Shell日志分析常用命令和例子
  • shell中的循环语句、判断语句实例
  • Linux下JDK中文字体乱码的解决方法
  • 关于ssh连不上问题的解决方法(必看)

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Linux BASH多进程并行处理的方法实现
    • Shell实现判断进程是否存在并重新启动脚本分享
    • linux shell 中 2>&1的含义
    • 一天一个shell命令 linux好管家--磁盘--df命令详解
    • virtualbox 中的linux 共享文件的方法
    • Shell获取文件的文件名和扩展名的例子
    • linux ar 命令的使用说明和实例讲解
    • 利用shell删除数据表中指定信息和字段对应的文件
    • Log4j 日志文件Linux/Mac/Windows通用存放位置设置方法
    • Shell时间(date)相关命令

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有