Jud*_*den 6 command-line rename
我目前正在 Ubuntu 10.04 下的 bash 中工作,但该解决方案在其他环境中也会很有趣(例如 Windows cmd.exe)。我通常会用临时名称重命名第一个文件,用第一个名称重命名第二个文件,最后用第二个名称重命名临时文件。是否有用于一步完成此操作的习语或程序?
示例(bash):
$ mv file1 tmp; mv file2 file1; mv tmp file2
Run Code Online (Sandbox Code Playgroud)
我创建了下面的 shell 脚本来完成这个任务,但我仍然很好奇是否有可用的标准方法。
#!/bin/sh
tmp=`mktemp`
mv $1 $tmp
mv $2 $1
mv $tmp $2
Run Code Online (Sandbox Code Playgroud)
我将它命名为swap,使其可执行并放置在我的路径中。这允许使用以下语法。
swap file1 file2
Run Code Online (Sandbox Code Playgroud)