我想添加前綴不在當前目錄.sh
文件和所有子目錄中的所有文件,使用find
bash
文件。Linux中,重命名慶典「沒有這樣的文件或目錄」錯誤
的問題是,我得到一個錯誤:
mv: cannot move './test.txt' to 'PRE_./test.txt': No such file or directory
我的一行是:
find -type f ! -name "*.sh" -exec sh -c 'mv "{}" PRE_"{}"' _ {} \;
我試圖xargs
與rename
,太:
find -type f ! -name "*.sh" -print0 | xargs -0 rename 's/(.*)$/PRE_$1/'
但我得到了同樣的錯誤。 有什麼問題? 在此先感謝!
'不能移動'./test.txt'到'PRE _。/ test.txt'似乎是一個非常明確的信息 - 看看你想給的新名字這是你想要的嗎?您在整個路徑的前綴,而不僅僅是文件名。 –
只在當前目錄中,或者也在當前目錄的所有子目錄中? – cxw
看看http://unix.stackexchange.com/questions/199301/find-files-based-on-name-and-moving-them-with-renaming-simultaneously –