word-123_AnotherWord--asdf_12345.mp4
word-123_AnotherWord-_asdf-12345.mp4
word-123_AnotherWord-asdf--12345.mp4
word-123_AnotherWord-asdf_-12345.mp4
的文件名...我希望削減到只包含最後的11個字符和擴展。
我現在嘗試這樣做,如下所示:
$ for i in *.mp4 ; do
mv "$i" "${/.*?(.{1,11}\.mp4)$/}";
done
但我給了我這個錯誤:
bash: ${/.*?(.{1,11}.mp4)$/}: bad substitution
任何想法,爲什麼?
這個問題是繼續這stack,但回答那裏工作在我的電腦本地只,我沒有在我的服務器遠程工作!
在此先感謝!
你究竟想要代碼做什麼? –
......也就是說:知道bash爲什麼會失敗的人是顯而易見的。如何改變工作方式並不明顯,因爲你的意圖不清楚。 –
但改名如何?給出一個輸入名稱和一個輸出名稱的例子。 –