重命名以「Unix_」爲前綴的文件夾中的所有文件,即假設文件夾中有兩個文件a.txt和b.pdf,則它們都應重命名從單個命令Unix_a.txt和Unix_b.pdf在單個unix命令中重命名文件夾中的所有文件並使用前綴
回答
嘗試rename
命令的文件夾與所述文件:
rename 's/^/Unix_/' *
重命名(sed s command)的參數表示來替換正則表達式^與Un ix_。脫字號(^)是一個特殊字符,意思是行的開頭。
你能解釋一下'/^/.../'的含義嗎? – 2016-12-24 20:07:51
@Matteo'的/^/.../'是[rename命令]的perl表達式參數(http://www.tecmint.com/rename-multiple-files-in-linux/) – RoyalleBlue 2017-01-19 15:38:12
如果你的文件名包含沒有whitepace和你沒有任何子目錄,你可以用一個簡單的循環for
:
$ for FILENAME in *; do mv $FILENAME Unix_$FILENAME; done
否則使用便捷rename
命令(這是一個Perl腳本) - 儘管它可能在每個Unix上都不可用(例如,OS X不包含rename
)。
在debian-administration.org簡短概述:
如果你的文件名包含空格它更容易使用find
,在Linux下面應該工作:
$ find . -type f -name '*' -printf "echo mv '%h/%f' '%h/Unix_%f\n'" | sh
在BSD系統上,不幸的是沒有-printf
選項。但GNU findutils應該可以安裝(例如,在Mac OS X上使用brew install findutils
)。
$ gfind . -type f -name '*' -printf "mv \"%h/%f\" \"%h/Unix_%f\"\n" | sh
我想這正是你卻被尋找:
ls | xargs -I {} mv {} Unix_{}
是的,這很簡單,優雅和強大,以及courese的ALOS ONELINE-COMAND。 你可以從我這裏得到更詳細的介紹頁面上:Rename Files and Directories (Add Prefix)
這就是我要找的.... – Green 2017-01-05 10:02:04
也適用於項目與空間,而忽略目錄
for f in *; do [[ -f "$f" ]] && mv "$f" "unix_$f"; done
我最近所面對這個相同的情況下,發現了一個更簡單的解決方案內置。我在這裏分享它,以便它可以幫助其他人尋找解決方案。
藉助OS X Yosemite,Apple已將批量重命名功能直接集成到Finder中。詳細信息可在here。我抄在下面的步驟,以及,
重命名多個項目
選擇的項目,然後按住Ctrl鍵單擊其中之一。
在快捷菜單中,選擇重命名項目。
在重命名文件夾項目下的彈出式菜單中,選擇替換名稱中的文本,將文本添加到名稱或更改名稱格式。
替換文本:在「查找」字段中輸入要刪除的文本,然後在「替換爲」字段中輸入要添加的文本。
添加文本:輸入要在該字段中添加的文本,然後選擇在當前名稱之前或之後添加文本。
格式:選擇文件的名稱格式,然後選擇在名稱前後放置索引,計數器或日期。在自定義格式字段中輸入一個名稱,然後輸入您想要開始的號碼。
單擊重命名。
如果您的文件中有一個常見模式,那麼您可以使用替換文本,否則添加文本也可以完成這項工作。
優秀 - 爲我節省了很多時間! – user3000868 2016-07-25 22:51:02
你可以只使用-i
代替-I {}
ls | xargs -i mv {} unix_{}
這也完美的作品。
ls
- 列出了目錄xargs
所有文件 - 接受由行中的所有文件系由於-i
選項{}
是所有文件的佔位符,必要的,如果xargs
獲得兩個以上的參數作爲輸入
用awk:
ls -lrt | grep '^-' | awk '{print "mv "$9" unix_"$9""}' | sh
- 1. 使用文件夾名稱作爲前綴重命名文件
- 2. 在unix中重命名文件夾中的多個文件
- 3. 重命名的所有文件夾中的前綴並以升序
- 4. 使用VBScript重命名文件夾中的特定前綴
- 5. 使用PHP重命名文件夾中的所有文件
- 6. 使用bash重命名文件夾中的所有文件
- 7. 使用單個命令在FTP中重命名文件
- 8. 重命名目錄中的文件夾中的所有文件
- 9. 複製文件夾並使用命令提示符重命名
- 10. Windows重命名子文件夾命令
- 11. 如何在s3中使用前綴重命名文件夾使用PHP sdk
- 12. 重命名文件夾中
- 13. 重命名文件夾中的文件
- 14. 批重命名文件夾中的所有文件
- 15. 重命名其他文件夾中的所有文件?
- 16. 無法將文件夾中的所有文件重命名
- 17. 重命名文件夾中的所有文件
- 18. 重命名文件夾中的所有文件Java
- 19. 重命名文件夾中的所有文件
- 20. 重命名文件夾中前6個文件的腳本
- 21. 重命名文件夾並在PowerShell中創建新文件夾
- 22. 如何重命名所有文件夾?
- 23. 循環並重命名php中的所有子文件夾
- 24. 使用文件夾名稱作爲前綴和當前文件名的一部分重命名文件VBS
- 25. 使用Windows REN命令從文件名中刪除前綴
- 26. 使用cmd重命名文件夾中的多個文件
- 27. 使用文件夾名稱在powershell中重命名文件
- 28. Bash - 在移動到單個文件夾之前重命名具有前綴的文件
- 29. 重命名文件使用MATLAB命令
- 30. 多文件重命名unix
檢查此鏈接=> http://www.cyberciti.biz/tips/renaming-multiple-files-at-a-shell-prompt.html – 2011-06-13 11:02:26
請點擊此處查看:http://theunixshell.blogspot.com/2013/ 01/bulk-renaming-of-files-in-unix.html – Vijay 2013-01-10 06:34:11