`

shell下除了某个文件其他文件全部删除

阅读更多
最简单的方法是

# shopt -s extglob      (打开extglob模式)
# rm -fr !(file1)

如果是多个要排除的,可以这样:
# rm -rf !(file1|file2)



BashShell有个extglob选项,开启之后Shell可以另外识别出5个模式匹配操作符,能使文件匹配更加方便。
开启shopt命令:shopt -s extglob
关闭shopt命令:shopt -u extglob

?(pattern-list) - 所给模式匹配0次或1次; *(pattern-list) - 所给模式匹配0次以上包括0次;+(pattern-list) - 所给模式匹配1次以上包括1次; @(pattern-list) - 所给模式仅仅匹配1次;!(pattern-list) - 不匹配括号内的所给模式。

示例
删除文件名不以jpg结尾的文件:
rm -rf !(*jpg)
删除文件名以jpg或png结尾的文件:
rm -rf *@(jpg|png)

分享到:
评论

相关推荐

    Shell 删除指定文件中含有指定字符的行

    Shell 删除指定文件中含有指定字符的行,2个参数,脚本中有注释

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

    本文将详细介绍在Shell中删除某些文件外所有文件的三种方法,确保在保留特定文件的同时安全地删除其他不需要的文件。 ### 方法1:模式匹配法 这种方法依赖于bash的扩展globbing(extglob)功能。`extglob`允许我们...

    PHP后台循环锁定文件.zip_PHP后台循环_php文件锁定_shell_锁定

    在“PHP后台循环锁定文件”这个案例中,可能是通过PHP脚本创建一个后台进程,该进程持续循环检查并锁定某个文件,确保文件在shell中的安全。这种方式可以应用于保护敏感的配置文件、日志文件或其他需要防止被意外...

    11.25 shell修改文件.rar

    在这个活动中,参与者可能学习了如何用Shell命令来创建、读取、更新和删除(CRUD)文件,特别是关注修改文件的技巧。 【标签】: "11.25 shell修改文件.rar" 标签再次强调了这次活动的核心主题——使用Shell脚本...

    shell脚本 检测指定盘符使用率是否大于80%,如果有,则删除最早的一个文件

    检测指定盘符使用率是否大于80%,如果有,则删除最早的一个文件

    linux shell脚本定时清理tomcat日志文件

    在本文中,我们使用 shell 脚本来实现 Tomcat 日志文件的切割和删除。 知识点三:cron 机制的应用 cron 机制是 Linux 操作系统中的一种定时任务管理机制,可以根据用户的需求,执行特定的任务。本文中,我们使用 ...

    在Shell命令行处理JSON数据的方法

    jq 允许你直接在命令行下对 JSON 进行操作,包括分片、过滤、转换等等。 让我们通过几个例子来说明 jq 的功能: 一、输出格式化,漂亮的打印效果 如果我们用文本编辑器打开 JSON,有时候可能看起来会一团糟,但是...

    shell常用命令

    Linux系统中的shell命令是进行文件管理、系统管理、任务调度等操作的重要工具。掌握常用shell命令对于提高工作效率至关重要。以下是针对文件和目录操作的一些常用shell命令及其使用说明。 一、文件目录类命令 1. ...

    java上传文件到linux服务器,操作linux服务器上文件,下载linux服务器文件,删除linux服务器文件

    总之,Java结合ganymed-ssh2库,为开发者提供了强大的工具,使他们能够在安全的环境下与Linux服务器进行交互,实现文件的上传、下载、操作和删除,极大地提升了远程管理服务器的效率。在开发过程中,理解这些基本...

    Delphi Cmdshell 线程注入、文件释放程序

    本文将详细探讨Delphi环境下如何实现Cmdshell线程注入以及文件释放的操作。 首先,线程注入是一种在目标进程中创建新线程的技术,常用于实现远程控制、调试或者监控等目的。在Delphi中,我们可以利用Windows API...

    UNIX shell 编程指南

    如何删除某个月份的文件 find的日常用法举例 find的日常用法帮助 如何批量改名 bc指令的基本用法 检查服务器的连接状况的shell find 和 exec xargs 保证shell脚本执行唯一性 用一条命令处理分别改变文件和文件夹的...

    LINUX/UNIX Shell编程大作业

    从passwd文件里删除某个用户记录  你可以使用UNIX/LINUX中一些比较简单的命令或命令组合来执行1、2、3、4、5的任务。对于任务6和7,你需要编写单独的Shell脚本文件(必须分别命名为add和delete)并且在你的主脚本...

    Linux常见命令与shell脚本

    1.21 chown更改某个文件/目录的所有者和属组 11 1.22 find文件查找 11 1.23 locate快速文件查找 13 1.24 whereis和which查找命令所在目录 13 1.25 grep搜索文件内容 13 1.26 tar文档管理 14 1.27 gzip/gunzip 和 ...

    linux/shell大作业

    7、 从passwd文件里删除某个用户记录 你可以使用UNIX/LINUX中一些比较简单的命令或命令组合来执行1、2、3、4、5的任务。对于任务6和7,你需要编写单独的Shell脚本文件(必须分别命名为add和delete)并且在你的主脚本...

    shell编程用户信息管理(模拟)课程设计说明书

    Shell 编程用户信息管理(模拟)课程设计说明书 该课程设计旨在掌握 Linux 操作系统中 shell 脚本编程技术...ID、查询并显示特定用户的记录、往 passwd 文件里增加新的用户记录和从 passwd 文件里删除某个用户记录等。

    CFile CStdioFile,CFileFine,Shell文件操作

    4. **Shell文件操作**:MFC还提供了对Windows Shell API的接口,可以执行更复杂的文件操作,如复制、移动、重命名、删除文件,创建快捷方式等。这些功能通过`SHFileOperation()`函数或者`CFindReplaceDialog`类来...

    shell基础十二篇

    2. **查找技巧**:`find`命令用于在指定目录下搜索满足特定条件的文件,`xargs`则将`find`找到的文件作为参数传递给其他命令,实现批量处理。 3. **后台操作**:`crontab`用于设置定时任务,`at`则用于一次性调度...

    shell语言编程shell语言编程

    除了Bash之外,Linux系统中还存在其他的Shell程序,例如Korn Shell(ksh)、C Shell(csh)、TENEX/TOPS C Shell(tcsh)和Z Shell(zsh)。每个Shell都有其独特的特点和优势,用户可以根据个人喜好或特定需求选择...

    windows shell

    在压缩包文件名列表中提到的"shell"可能是某个shell的实现,如Bash,或者是一个包含各种shell命令行工具的集合。在Windows上安装并配置好这样的环境后,用户就可以在熟悉的Windows环境下使用这些Unix shell命令,...

Global site tag (gtag.js) - Google Analytics