【发布时间】:2011-04-12 04:08:23
【问题描述】:
我在一个目录中大约有 50 个文件,其中包含空格、撇号等。我怎样才能对它们进行大规模重命名以删除撇号并用下划线替换空格?
我可以的
ls | grep '*.txt' | xargs ....
但我不确定在 xargs 位中要做什么
【问题讨论】:
-
How to do a mass rename? 的可能重复项
我在一个目录中大约有 50 个文件,其中包含空格、撇号等。我怎样才能对它们进行大规模重命名以删除撇号并用下划线替换空格?
我可以的
ls | grep '*.txt' | xargs ....
但我不确定在 xargs 位中要做什么
【问题讨论】:
我使用ren-regexp,这是一个 Perl 脚本,可让您非常轻松地批量重命名文件。
你会做类似ren-regexp 's/ /_/g' *.txt的事情。
$ ls -l
total 16
-rw-r--r-- 1 marc marc 7 Apr 11 21:18 That's a wrap.txt
-rw-r--r-- 1 marc marc 6 Apr 11 21:18 What's the time.txt
$ ren-regexp "s/\'//g" "s/ /_/g" *.txt
That's a wrap.txt
1 Thats a wrap.txt
2 Thats_a_wrap.txt
What's the time.txt
1 Whats the time.txt
2 Whats_the_time.txt
$ ls -l
total 16
-rw-r--r-- 1 marc marc 7 Apr 11 21:18 Thats_a_wrap.txt
-rw-r--r-- 1 marc marc 6 Apr 11 21:18 Whats_the_time.txt
【讨论】: