如何删除当前目录中与给定模式不匹配的某些文件?

2024-01-18

using rm *.sh删除以 .sh 结尾的文件很容易且易于理解。但是如何删除当前目录中所有不以以下结尾的文件.jar就像是rm * -except *.jar


尝试这个:

find . -mindepth 1 -maxdepth 1 ! -name '*.jar' | sort

如果您确实想删除其输出中的所有文件,那么只需执行

find . -mindepth 1 -maxdepth 1 ! -name '*.jar' -delete

您可以阅读 find(1) 手册页,以获取有关这个真正强大的工具的更多信息。

EDIT:

由于 -delete 标志仅在 GNU find > 4.2.3 中找到(正如 SiegeX 所指出的),这里有几个替代方案,这也确保我们不会尝试删除目录:

find . -mindepth 1 -maxdepth 1 ! -type d ! -name '*.jar' -print0 | xargs -0 -r rm -f

-r xargs 标志是 GNU 扩展,因此这稍微更便携(它适用于 *BSD),但不那么干净:

find . -mindepth 1 -maxdepth 1 ! -type d ! -name '*.jar' -print0 | xargs -0 rm -f

作为最后但也是最便携的手段:

find . -mindepth 1 -maxdepth 1 ! -type d ! -name '*.jar' -exec rm '{}' ';'

这样做的缺点是为每个文件单独调用 rm ,这会使其速度明显变慢。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何删除当前目录中与给定模式不匹配的某些文件? 的相关文章

  • awk 返回两个变量

    现在这就是我正在做的事情 ret ls la awk print 3 9 usr echo ret awk print 1 fil echo ret awk print 2 问题是我没有运行ls我正在运行一个需要时间的命令 因此您可以理解其
  • shell解析json并循环输出组合变量

    杰斯克喜欢我之前的话题 https stackoverflow com questions 74063588 shell parsing json contains spaces in string 我知道如何解析带有空格的简单 json
  • 比较linux中的两个未排序列表,列出第二个文件中的唯一项

    我有 2 个包含号码列表 电话号码 的文件 我正在寻找一种列出第二个文件中第一个文件中不存在的数字的方法 我尝试过各种方法 comm getting some weird sorting errors fgrep v x f second
  • 如何使用 bash 中提供的工具生成一系列非周末日期?

    我想生成一个文件列表 其中名称包含 filename date 例如file 20111101 file 20120703 开始November 1 2011直到今天 应该不包括周末 Thanks 2011年试试这个 for y in 20
  • Docker exec linux 终端创建别名

    我有一个正在运行且独立的容器 我想在附加到该容器之前创建一个命令别名 当我连接到容器并输入 alias bar foo 创建别名 并可以通过以下方式检查 alias command 但如果我想做同样的事情码头执行者命令即这样 docker
  • 如何使用 Clojure 在命令行中更改目录?

    我正在寻找的是 Windows 命令行中的这种命令行交互 C temp1 gt clj some script clj C temp2 gt 其中 some script clj 包含类似以下内容 cd c temp2 那么问题来了 如何实
  • 带有二进制数据的 Bash echo 命令?

    有人可以解释一下为什么这个脚本有时只返回十六进制字符串表示形式的 15 个字节吗 for i in 1 10 do API IV openssl rand 16 API IV HEX echo n API IV od vt x1 w16 a
  • 在 Shell 中提取匹配模式后的字符串

    如何提取 Shell 脚本中匹配模式后面的任何字符串 我知道 Perl 脚本中的此功能 但不知道 Shell 脚本中的功能 以下是示例 subject 01 这是一个示例主题 可能会有所不同 我必须提取 Subject 01 后面的任何字符
  • 将变量插入 sh 脚本命令[重复]

    这个问题在这里已经有答案了 bin sh f set proj dir OutputDir for projname in lib proj1 proj2 do mv scripts projname BYTECODE proj dir s
  • 从命令行更改 konsole 选项卡标题并使其持久?

    如何更改 konsole 选项卡标题 默认情况下 它设置为 u n 所以它总是自动改变 我可以这样设置 qdbus org kde konsole KONSOLE DBUS SESSION setTitle 1 My Title 但是一旦您
  • 使用 strace 修复挂起内存问题

    我有一个在 RHEL6 x 64 位 上运行的多线程进程 我发现当我尝试启动该进程时 该进程挂起并且大多数线程 同一进程的 崩溃 有些线程等待线程之间的共享内存被创建 我可以看到所有的共享内存都没有被创建 但是当我使用 strace 时 进
  • 在 Django shell 会话期间获取 SQL 查询计数

    有没有办法打印 Django ORM 在 Django shell 会话期间执行的原始 SQL 查询的数量 Django 调试工具栏已经提供了此类信息 例如 5 QUERIES in 5 83MS但如何从 shell 中获取它并不明显 您可
  • mongodb 正在运行吗?

    我已经在我的 Unix 服务器上安装了 Mongodb 和 PHP 驱动程序 我的问题是如何判断 Mongodb 是否正在运行 是否有一个简单的命令行查询来检查状态 如果我从外壳程序启动一次 如果我退出外壳程序 它会继续运行 情况似乎并非如
  • Python 子进程:无法转义引号

    我知道以前曾问过类似的问题 但它们似乎都是通过重新设计参数的传递方式 即使用列表等 来解决的 但是 我这里有一个问题 因为我没有这个选项 有一个特定的命令行程序 我使用的是 Bash shell 我必须向其传递带引号的字符串 它不能不被引用
  • 如何将输出重定向到文件,如果文件不存在则不创建它?

    我需要将输出重定向到一个文件 gt 在 shell 中 但如果该文件尚不存在 则不应创建该文件 如何实现这一目标 我尝试创建文件的符号链接并重定向到符号链接 但不幸的是 如果文件尚不存在 无论如何都会创建文件 也许我需要重定向到一个单独的程
  • UNIX时间记录时区吗?

    我想问一下UNIX时间 UNIX时间是否记录时区 我将托管从美国芝加哥移至 JST 问题是我的整个 MySQL 数据库都有 UNIX 时间 芝加哥 美国时区 的记录 我有一个 PHP 代码来显示之前的时间 例如 3 天前 昨天等 当我搬到新
  • AJAX 进度条 - 轮询、Comet?

    我想要一些关于如何实施以下内容的建议 我想让我的用户通过 AJAX 了解在我的服务器上运行的任务的进度 我的服务器运行一个 PHP 脚本 该脚本使用 popen 函数通过 shell 命令下载文件 它定期回显 打印正在发生的事情 我想使用
  • BASH 中带有千位分隔符的数字格式

    我有一个号码12343423455 23353 我想用千位分隔符格式化数字 所以输出将是12 343 423 455 23353 printf 3f n 12345678 901 12 345 678 901
  • Unix shell脚本找出脚本文件所在的目录?

    基本上我需要使用与 shell 脚本文件位置相关的路径运行脚本 如何将当前目录更改为与脚本文件所在的目录相同 在 Bash 中 你应该得到你需要的东西 如下所示 usr bin env bash BASEDIR dirname 0 echo
  • “./somescript.sh”和“. ./somescript.sh”有什么区别

    今天我按照一些说明在 Linux 中安装软件 有一个需要首先运行的脚本 它设置一些环境变量 指令告诉我执行 setup sh 但是我执行时犯了一个错误 setup sh 所以环境没有设置 最后我注意到了这一点并继续进行 我想知道这两种调用脚

随机推荐

  • 在本机库中调试崩溃的最简单方法,由 Android 应用程序链接?

    我已将几个低级 C 库移植并创建到 Android 以便在我的应用程序中使用 我使用 NDK 交叉编译它们 然后使用 System loadLibrary 链接到它们 一段时间后 我的应用程序崩溃了 似乎是由于库中的错误 07 28 11
  • Swift:使用枚举在 CoreData 中存储状态

    我想在 CoreData 中存储托管对象的枚举状态 enum ObjStatus Int16 case State1 0 case State2 1 case State3 3 class StateFullManagedObject NS
  • Angular2 在 Component.js 中使用管道

    我正在学习 Angular2 我想格式化一个添加千位逗号分隔符的数字 据我所知 这可以使用 Pipes 来完成 问题是我想在 js 文件中以编程方式格式化数字 而不是在 html 中 就像 var number 一样 首先 我意识到没有可以
  • 如何将数据从活动传递到自定义适配器

    大家好 我需要将 arraylist 从活动传递到自定义适配器类 但使用我的代码它没有通过 我不知道为什么 我使用意图来传递数据 活动 private void azz int a 0 String status boolean statu
  • 排除 HttpModule 在 IIS7 上运行静态内容

    我的身份验证 HttpModule 有问题 问题是它显然会针对我在 Web 服务器 IIS7 上收到的每个请求运行 因为它也使用 Session 变量 所以它无法在 CSS JS 文件和类似文件上正常工作 我尝试使用
  • DispatchSemaphore 是 NSLock 的良好替代品吗?

    我一直在使用NSLock同步代码的敏感部分 但由于必须从锁定它们的同一线程中解锁它们而遇到了问题 然后我发现GCDDispatchSemaphores 似乎做同样的事情 并且可以从任何线程向它们发出信号 这增加了便利性 不过 我想知道这种便
  • pydot:是否可以绘制两个具有相同字符串的不同节点?

    我正在使用 pydot 在 python 中绘制图表 我想表示一个决策树 比如 a1 a2 a3 是属性 两个类是 0 和 1 a1 gt 3 a2 gt 10 a3 gt 7 1 0 1 0 然而 使用 pydot 只创建了两个叶子 树看
  • 如何从 JSF 2.0 Facelets 模板调用 List.size()?

    在 JSF 2 0 Facelets 模板中调用 list size 的语法是什么 例如 使用 h outputText 元素 这个怎么样
  • 按每行中 NA 的数量对数据进行排序

    我想对有一些缺失值的数据框进行排序 name dist1 dist2 dist3 prop1 prop2 prop3 month2 month5 month10 month25 month50 issue 1 A1 232 0 1462 9
  • 如何在边框一侧创建带有链接的圆圈

    我想画一个像这样的圆圈this http jsfiddle net 4ns3bc9h 1 我能够在小提琴中做到这一点 但问题是我需要每个橙色边都是一个链接 而我不能用边框来做到这一点 如果有人能帮助我 我将非常感激 circle width
  • 如何在 ERB 中转义 ERB 标签

    我有一个简单的fixture yml file label body 问题是 ERB 代码被解析为加载夹具的一部分 而我实际上希望主体字面意思是 未插值 如何逃脱 ERB 标签 添加第二个 到开始标签 label body The
  • 唯一的短信发送者 ID?

    我想构建一个向人们发送短信的应用程序 但是 我希望我的用户知道短信来自应用程序而不是其他任何内容 因此他们无法伪造它 有没有办法保证发件人 ID 对于我的应用程序是唯一的 似乎通过电话发送 SMS 时每个电话号码都有一个唯一的 SENDER
  • Angular 与微数据

    Microdata 是否可以与动态 Angular 一起使用ng repeat items 我可以将它用作 div div 我已经发现模式验证器 https search google com structured data testing
  • 如何将滚动视图布局分成两半以显示父背景颜色和两个窗格?

    我有一个带有白色背景的简单 UI 屏幕 然后我有 Scrollview 四周边距为 10 dp 背景为黑色 所以基本上是一个矩形中的一个矩形 如何将滚动视图分成两半 以便可以在内部黑色矩形的中间显示一条白色水平线 从而创建两个黑色窗格 下面
  • createBottomTabNavigator 具有针对不同选项卡的动态 tabStyle

    根据Document https reactnavigation org docs en bottom tab navigator html bottomtabnavigatorconfig 我可以改变activeTintColor and
  • 使用ansible从配置文件中删除文本块

    我正在尝试从 samba 配置文件 smb conf 中删除以下部分 public path opt samba public guest ok yes browsable yes writable yes read only no Blo
  • 来自 Jenkins 的 Web 服务调用

    我需要编写一个 Web 服务客户端并从 Jenkins 调用它 以下是我的问题 从 Jenkins 调用 Web 服务的最佳方式是什么 有可用的默认插件吗 我需要将 XML 数据作为输入传递给 Web 服务 如果插件不是选项 您能否让我知道
  • 带有 CUDA 的 Lambda 表达式

    如果我使用thrust transform on thrust host lambda 用法没问题 thrust transform thrust host a a arraySize b d int a int b gt int retu
  • 子虚拟目录中的 IIS URL 重写不重定向

    我在 默认网站 果园 上安装了 Asp NET 应用程序 可访问http localhost 果园 http localhost orchard 并且我想使用 URL 重写 我添加了规则
  • 如何删除当前目录中与给定模式不匹配的某些文件?

    using rm sh删除以 sh 结尾的文件很容易且易于理解 但是如何删除当前目录中所有不以以下结尾的文件 jar就像是rm except jar 尝试这个 find mindepth 1 maxdepth 1 name jar sort