使用终端从00012到00441删除文件

时间:2018-05-05 22:07:16

标签: bash macos range leading-zero brace-expansion

这是我的Bash版本: 的 3.2.57(1) - 释放

我发现这可能使用终端rm code,但它对我不起作用

这是第一个文件的图片: Array.find()

键入rm _{00012..00441}我收到此错误: Picture of a bunch of Files

似乎代码我们无法使用前导零,因为它试图找到像12,13,14,15这样的文件,而不是00012,00013,00014,00015

为了使事情变得更加困难,范围中的最后一个文件具有不同数量的前导零,因此使用rm _000{将无法正常工作

尝试使用AppleScript将其作为

运行
do shell script ("rm  _{" & STARTrange & ".." & ENDrange & "}.psd")

3 个答案:

答案 0 :(得分:0)

尝试此命令。

find ./ -name "_0*.psd" -type f -delete;

答案 1 :(得分:0)

感谢赛勒斯,我完成了这项工作。 OSX的答案是使用自制软件安装最新版本的Bash。

使用本指南,我可以将默认Bash从终端更改为一个Homebre安装:https://apple.stackexchange.com/questions/193411/update-bash-to-version-4-0-on-osx

由于

答案 2 :(得分:0)

对于早于 v4.0 bash版本,其中任何一个都应该有效:

  1. rm _000{12..99} _00{100..441}
  2. rm $(printf '_%.5i ' {12..441})