我想重命名包含子字符串“ foo
”的所有文件,在给定文件夹中将其替换为“ bar
”。我该怎么做?
更新:
for i in ./*foo*; do mv "$i" "${i//foo/bar}";done
作品!!!
我想重命名包含子字符串“ foo
”的所有文件,在给定文件夹中将其替换为“ bar
”。我该怎么做?
更新:
for i in ./*foo*; do mv "$i" "${i//foo/bar}";done
作品!!!
如果您有rename(1)
附带的perl
(Debian 提供),您可以使用:
cd /path/to/directory
rename 's/foo/bar/g' *
如果你有另一个rename(1)
(我在 Red Hat Enterprise Linux 和其他一些发行版中看到它,它来自 util-linux),你可以尝试:
cd /path/to/directory
rename foo bar *foo*
rename
您可以通过尝试检查您拥有的版本rename -V
。如果它不识别标志,则它是 perl 版本。如果它打印版本信息,它是另一个版本。