在linux shell脚本中如何重命名文件
时间:2019-11-20 08:53:02 来源:igfitidea点击:
在UNIX/macOS(OS X)/Linux/BSD操作系统,如何在bash shell中重命名文件?
bash中使用mv重命名文件
可以使用以下mv命令语法将SOURCE文件重命名为DESTINATION文件:
mv oldname newname mv SOURCE DEST mv olddir newdir mv old-file new-file
将文件SOURCE重命名为DEST,或将文件SOURCE移至新目录DIRECTORY
示例:将名为/tmp/foo的文件重命名为/tmp/bar
# 创建一个文件 /tmp/foo touch /tmp/foo ls -l /tmp/foo mv /tmp/foo /tmp/bar ls -l /tmp/bar ls -l /tmp/foo
示例:重命名目录
mv offfer offers ## 参数 -v 显示mv的操作信息 ## mv -v offfer offers
示例:在覆盖前进行提示
-i选项用于交互式处理文件。
在覆盖现有文件的文件之前,用户会收到一条错误消息。如果用户输入以y/Y开头,则尝试移动/重命名。
touch /tmp/test mv -i /tmp/test /tmp/bar
输出示例:
mv: overwrite `/tmp/bar'? y
mv -u选项
仅当源文件比目标文件新或者缺少目标文件时,-u选项才会移动:
mv -u data.txt /mnt/floppy/backup.txt
mv -v选项
-v选项说明正在执行的操作:
mv -v /tmp/bar /tmp/output.txt
输出示例:
`/tmp/bar' -> `/tmp/output.txt'
示例:重命名多个文件
使用rename命令可重命名多个文件。例如,将所有* .perl文件重命名为* .pl,执行:
rename .perl .pl *.perl
有关更多详细信息,请参见如何在shell提示符下重命名多个文件。
mv命令帮助
要查看所有mv命令选项的列表,请执行:
man mv mv --help
输出示例:
Usage: mv [OPTION]... [-T] SOURCE DEST or: mv [OPTION]... SOURCE... DIRECTORY or: mv [OPTION]... -t DIRECTORY SOURCE... Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY. Mandatory arguments to long options are mandatory for short options too. --backup[=CONTROL] make a backup of each existing destination file -b like --backup but does not accept an argument -f, --force do not prompt before overwriting -i, --interactive prompt before overwrite -n, --no-clobber do not overwrite an existing file If you specify more than one of -i, -f, -n, only the final one takes effect. --strip-trailing-slashes remove any trailing slashes from each SOURCE argument -S, --suffix=SUFFIX override the usual backup suffix -t, --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY -T, --no-target-directory treat DEST as a normal file -u, --update move only when the SOURCE file is newer than the destination file or when the destination file is missing -v, --verbose explain what is being done -Z, --context set SELinux security context of destination file to default type --help display this help and exit --version output version information and exit The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX. The version control method may be selected via the --backup option or through the VERSION_CONTROL environment variable. Here are the values: none, off never make backups (even if --backup is given) numbered, t make numbered backups existing, nil numbered if numbered backups exist, simple otherwise simple, never always make simple backups GNU coreutils online help: <http://www.gnu.org/software/coreutils/> Report mv translation bugs to <http://translationproject.org/team/> Full documentation at: <http://www.gnu.org/software/coreutils/mv> or available locally via: info '(coreutils) mv invocation'