2013-08-21 72 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