The*_*lis 2 regex linux zip command-line
我有成千上万个名为1.jpg,2.jpg,3.jpg等的jpg文件。我需要压缩它们的范围,我以为我可以使用正则表达式来做到这一点,但是到目前为止还没有任何运气。
这是命令
zip images.zip '[66895-105515]'.jpg
Run Code Online (Sandbox Code Playgroud)
有人有什么想法吗?
我非常确定无法将这样的数字范围与正则表达式(数字范围,是的,但不是整个多位数字)进行匹配,因为正则表达式在字符级上起作用。但是,您可以使用“ seq”命令生成文件列表,并使用“ xargs”将它们传递给“ zip”:
seq --format %g.jpg 66895 105515 | xargs zip images.zip
Run Code Online (Sandbox Code Playgroud)
我在Linux下用一堆虚拟文件测试了该命令,并且运行良好。
与 ls 和 bash range ( {m..n}) 运算符结合使用,如下所示:
ls {66895..105515}".jpg" 2>/dev/null | zip jpegs -@
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3362 次 |
| 最近记录: |