linux - 在 bash 中交换两个文件的最短方法

标签 linux bash command-line

bash 中可以交换两个文件吗?

或者,它们可以以比这更短的方式交换:

cp old tmp
cp curr old
cp tmp curr
rm tmp

最佳答案

$ mv old tmp && mv curr old && mv tmp curr

效率略高!

包装成可重用的shell函数:

function swap()         
{
    local TMPFILE=tmp.$$
    mv "$1" $TMPFILE && mv "$2" "$1" && mv $TMPFILE "$2"
}

关于linux - 在 bash 中交换两个文件的最短方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1115904/

相关文章:

maven - 如何在命令行中获取Maven groupId,artifactId和项目版本

c - 如何跟踪所有本地函数调用和退出,并将其记录到文件中以供查看

php - PHP CLI 脚本可以在不 fork 的情况下调用自身吗?

linux - 如何从 Linux 内核调用标准库?

bash - Docker:如何将 bash 与基于 Alpine 的 docker 镜像一起使用?

linux - 使用 csv 文件的部分文件名创建 2 个新列

c - 如何通过流程粘合系统?

bash - Docker exec 引用变量

linux - 如何在 bash 中编写 "if grep a and grep b"结构?

linux - Java 进程列表