在Linux中,有时我会这样重命名文件:
mv dir1/dir2/dir3/file.txt dir1/dir2/dir3/file.txt.old
请注意,我只想重命名文件,而不要将其移动到另一个目录。
有没有可以让我做该命令的简写版本的命令?我在想类似的东西:
mv dir1/dir2/dir3/file.txt file.txt.old
甚至是类似的东西(仅在名称后面添加):
mv dir1/dir2/dir3/file.txt {}.old
我的目标是不必再次指定完整路径。
我知道我写的那些“例子”是行不通的,但这只是我要完成的想法。
我不需要CD进入目录。
(cd dir1/dir2/dir3 && exec mv file.txt{,.old})
它实际上与不带子进程的代码具有相同的性能,因为exec
避免了fork()
在外部命令调用期间执行ing,因此您只能使用任一分支。