2013-08-21 172 views
-1

我想找到重命名文件用下劃線(_)的bash腳本來重命名目錄中的文件 - (連字符)如何使用bash腳本

例如更改文件名my_page_name.php我-PAGE- name.php, 保持者的文件的名稱,而不.php擴展名相同

我嘗試: 算不了什麼,只是用腳本這裏找到bbs.archlinux.org/viewtopic.php?id=36305和替換空格與_和下劃線 -

+0

那你試試? – devnull

+0

什麼都沒有,只是使用這裏發現的腳本 https://bbs.archlinux.org/viewtopic.php?id=36305 並用_代替空格,用 - –

+2

代替下劃線而不是提到評論中的鏈接,更新發布到目前爲止您的嘗試。 – devnull

回答

6

如果你只需要在一個目錄中(而不是subdirecto阿爾·里斯):

for f in *_*; do mv "$f" "${f//_/-}"; done 

否則,您可以使用find-exec一個bash子shell。

+0

謝謝,工作正常 –

+1

不要忘記引用你的變量,你永遠不知道名稱中帶有空格的文件是否滑入。 –

+1

@AdrianFrühwirth:夠公平的。這樣更通用。 – rici

0

使用rename程序:

rename s:_:-: *.php