Linux bash,Centos。Linux:如何爲保留擴展名的文件添加後綴
如何爲保持擴展名的文件添加後綴? 我可以找到有關如何更改或添加擴展名的文件,但不知道如何添加後綴保持擴展名...
例如:如果我想添加'_thumb'後綴到所有圖像文件(。 jpg,.png,.gif,.JPEG)。
somefile.jpg - > somefile_thumb.jpg
編輯:如果可能的腳本可以被重新推出,並不會影響那些已經被重命名的文件。爲了添加更多的擴展名列表。
在此先感謝!
Linux bash,Centos。Linux:如何爲保留擴展名的文件添加後綴
如何爲保持擴展名的文件添加後綴? 我可以找到有關如何更改或添加擴展名的文件,但不知道如何添加後綴保持擴展名...
例如:如果我想添加'_thumb'後綴到所有圖像文件(。 jpg,.png,.gif,.JPEG)。
somefile.jpg - > somefile_thumb.jpg
編輯:如果可能的腳本可以被重新推出,並不會影響那些已經被重命名的文件。爲了添加更多的擴展名列表。
在此先感謝!
您可以使用:
shopt -s nullglob
for f in *.jpg *.png *.gif *.JPEG; do
[[ $f != *_thumb.* ]] && mv "$f" "${f%.*}_thumb.${f##*.}"
done
在一個微小的變化,你可以強制與發現去除僅延長:
mv "$file" "${file%.${file##*.}}_thumb.${file##*.}"
「重命名」命令可能是你在尋找:
rename 's/^(.*)\.(png|jpg|gif|JPEG)$/$1_thumbnail.$2/' *.png *.jpg *.gif *.JPEG
的解釋:
雖然這段代碼可能會回答這個問題,但提供關於爲什麼和/或如何回答問題的附加背景將顯着提高其長期價值。請[編輯]你的答案,添加一些解釋。 – CodeMouse92
非常感謝!它運行。 但是,還有一個疑問:如果我想重新啓動腳本,並且不想重命名之前已被重命名的那些文件? (例如,爲了添加一些擴展更多) – MikeBau
檢查更新的答案。它會跳過下一次重命名相同的文件。 – anubhava
非常好,謝謝。我認爲它現在更完整 – MikeBau