重命名带有前缀的文件夹中的所有文件"Unix_"
假设一个文件夹有两个文件
a.txt
b.pdf
那么它们都应该从一个命令重命名为
Unix_a.txt
Unix_b.pdf
如果您的文件名包含没有空格并且你没有任何子目录,你可以使用一个简单的for
loop:
$ for FILENAME in *; do mv $FILENAME Unix_$FILENAME; done
否则使用方便的rename
命令(这是一个 perl 脚本) - 尽管它可能无法在每个 Unix 上开箱即用(例如 OS X 不附带rename
).
debian-administration.org 上的简短概述:
- 轻松重命名多个文件 http://web.archive.org/web/20160319034832/http://www.debian-administration.org/article/150/Easily_renaming_multiple_files.
如果您的文件名包含空格,则更容易使用find
,在 Linux 上,以下应该可以工作:
$ find . -type f -name '*' -printf "echo mv '%h/%f' '%h/Unix_%f\n'" | sh
在 BSD 系统上,没有-printf
不幸的是,这个选项。但GNU findutils http://www.gnu.org/software/findutils/应该是可安装的(例如在 Mac OS X 上brew install findutils
).
$ gfind . -type f -name '*' -printf "mv \"%h/%f\" \"%h/Unix_%f\"\n" | sh
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)