【发布时间】:2020-01-04 07:27:37
【问题描述】:
我刚从朋友那里得到一些照片。 输入:
'WhatsApp Image 2020-01-03 at 15.13.36.jpeg'
'WhatsApp Image 2020-01-03 at 15.13.37.jpeg'
'WhatsApp Image 2020-01-03 at 15.13.37 (1).jpeg'
'WhatsApp Image 2020-01-03 at 15.13.38.jpeg'
我想通过某种自动化来更改他们的名字。所以我知道当我写的时候:
for x in ./*.jpeg;do open $x;done
我可以打开同一目录中的所有文件。 要更改他们的名字,我可以使用以下命令:
mv a.jpeg b.jpeg
所以我的问题是如何编写一个 for 循环,这样我不仅可以更改名称,还可以增加一些 val 编号: 这一定看起来像:
i=1 && for x in ./*.jpeg;do mv ./$x ./$i.jpeg & i++; done
我不确定适当的语法会是什么样子。
输入:
'WhatsApp Image 2020-01-03 at 15.13.36.jpeg'
'WhatsApp Image 2020-01-03 at 15.13.37.jpeg'
'WhatsApp Image 2020-01-03 at 15.13.37 (1).jpeg'
'WhatsApp Image 2020-01-03 at 15.13.38.jpeg'
输出:
1.jpeg
2.jpeg
3.jpeg
4.jpeg
【问题讨论】:
-
请留下输入和输出文件的例子。谢谢
-
您是否尝试使用
&作为布尔and运算符?你想要&&。 -
必须是单排吗?
-
你是对的。它应该是 &&。一行是一种乐趣。
标签: bash for-loop syntax terminal