回答
在終端使用find
:
find . -type f -name "*_*_*.jpg" -execdir bash -c 'mv "$0" "${0##*_}"' {} \;
會導致:
ABC_XYZ_123.jpg -> 123.jpg
謝謝!這工作! – ABZ
所以我想了解什麼mv「$ 0」「$ {0 ## * _}」。你能解釋一下給我嗎?我希望能夠重新使用它來重命名其他名稱格式。謝謝! – ABZ
它被稱爲[shell參數擴展](https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html),基本上發生的事情是變量'$ 0'成爲名稱與'* _ * _ *'模式相匹配的文件。當用在大括號'$ {}'中時,它就像一個字符串操作的即時方法。 '## *'表示匹配最長的模式,直到它遇到'_',它被刪除。我意識到這聽起來相當複雜,但是一旦你使用了它幾次,它就更有意義了;鏈接的頁面有一些非常有用的例子,所以試試吧! –
因爲我永遠記得,專門對這種東西的凳子的命令行(像rename
)我創建了一個bash
腳本,它的任務是:
$ ls > x.sh
$ vi x. sh
在VI
:
:%s/^[a-z_]*\(.*\)$/mv \0 \1/`
然後:
$ source x.sh
rename
可以做的喜歡,但正如我所說,我從來沒有打擾過去學習它。
$ brew install rename
我沒有試過這個,但謝謝! – ABZ
- 1. 如何從文件名中刪除所有非數字字符遞歸
- 2. 刪除字符串jquery中的所有非數字字符?
- 3. logstash - 刪除字段中的所有非數字字符
- 4. 從字符串中刪除所有非字母,非數字字符?
- 5. 刪除除空格以外的所有非數字字符
- 6. 刪除CString中的所有非數字字符
- 7. 刪除文件名中的非字母字符
- 8. 刪除文件中的非ASCII字符
- 9. 刪除字符串中的所有非ASCII字符
- 10. 在sql中刪除所有非數字字符SELECT
- 11. 在JavaScript中刪除字符串中的所有非數字字符
- 12. 如何從BASH中的字符串中刪除所有非數字字符?
- 13. 在Python中刪除字符串中的所有非數字字符
- 14. 刪除文件名中的非數字字符,但擴展名爲java
- 15. 使用preg_replace刪除所有非字母數字字符
- 16. 刪除所有非法字符
- 17. 刪除除一個特定字符以外的所有非數字字符
- 18. 如何從字符串中刪除所有非字母(所有語言)和非數字字符?
- 19. Notepad ++刪除非英文數字字符
- 20. 從lua字符串中刪除所有非字母數字字符
- 21. Android。 SQLite的。刪除所有非數字
- 22. 刪除名稱前的字符串中的所有字符
- 23. SAS:刪除所有文字字符
- 24. 從已解析的CSV文件中刪除非數字字符
- 25. 刪除PowerShell中的文件名字符
- 26. 刪除字符串中的所有數字字符DAX
- 27. Javascript:如何從文件名中刪除非法的URL字符?
- 28. 刪除文件名中的非拉丁字符
- 29. 刪除MS Word文檔中的所有數字字符
- 30. 如何從Java中的字符串中刪除所有非字母字符?
他們全部在一個單獨的目錄,或者是有一個層次?會不會有'ABC_123.jpg'和'DEF_123.jpg'? –