重命名所有文件并将连字符 - 替换为下划线 _

重命名所有文件并将连字符 - 替换为下划线 _

所以我在目录中有一堆文件,pdf,docx 等,我试图重命名它们并将破折号“ -”替换为下划线“ _”。

示例:700006233-20161026092752.pdf>>700006233_20161026092752.pdf

这是我正在使用的代码,但似乎不起作用。

$ for file in /directory/*; do echo mv "$file" "$(echo $file | sed 's/-/_/g')" ; done

答案1

使用rename

rename "s/-/_/g" *

mv "$file" "${file//-/_}"或者在循环中使用for

相关内容