在某事之前和之后删除空格

时间:2013-06-16 22:59:21

标签: sed awk rename

我想知道如何对这样的文件进行大规模重命名(使用rename或sed / awk):

Name 1 - Name 2 - Name 3.doc
Name 1- Name 2 - Name 3.doc
Name 1 -Name 2 - Name 3.doc

问题是我希望所有文件都在同一模式中,例如

Name 1-Name 2-Name 3.doc

根本没有空格。我正在阅读重命名文档但无法找到方法来执行此操作。

2 个答案:

答案 0 :(得分:2)

怎么样:

for file in *.doc; do 
   mv "$file" "$(sed 's# *- *#-#g' <<< "$file")"
done

答案 1 :(得分:2)

尝试这样做:

rename 's/\s*-\s*/-/g' *.doc

您需要Perl的renamesee this post