![](/img/trans.png)
[英]Linux Renaming files in a folder where the names is ab1.jpg, ab2.jpg, ab10.jpg etc
[英]Linux renaming now.jpg.1 to spy_1.html
我想使用linux重命名10個文件。
now.jpg至spy_.html
另外九個應該是
從now.jpg.1到spy_html.1
從now.jpg.2到spy_html.2
依此類推。
到目前為止,我已經提出了:
for f in *.jpg
do
mv “$f” “(“%s”%p”%i”%o”%n”%_).html”
done
但這是行不通的。 任何提示表示贊賞。
您可以使用正則表達式捕獲可選的數字擴展名並將其添加到目標文件名。 這應該與bash一起使用:
for f in *.jpg*
do
if [[ $f =~ now\.jpg(\.[0-9])? ]]; then
mv "$f" "spy.html${BASH_REMATCH[1]}"
fi
done
假設您想要spy.html[.#]
。 如果要為帶有數字擴展名的文件(即spy_html.1
,則發出兩個命令會更容易,一個命令用於now.jpg
,一個循環用於now.jpg.*
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.