将一个目录替换为另一个

时间:2015-05-06 23:10:55

标签: unix mv rm

unix中,如果我想将一个文件(例如foo)替换为另一个文件(例如bar),我会打电话给

$ mv bar foo

foo将消失,bar将取名。

然而,如果我想用另一个目录替换一个目录(再次,foobar),这将无效:

$ mv bar foo

此处,bar目录将移动到foo目录中。

要将bar替换为foo,我知道我可以

$ rm -r foo
$ mv bar foo

但有没有办法用一个命令来完成这个?

1 个答案:

答案 0 :(得分:0)

当目标目录不存在时,它就是mv的工作方式 - 它会移动/重命名,当存在时 - 会将源目录移动到它中。 如果你真的需要经常这样做并希望简化这个,你可以使用别名,例如像这样的smth:

rmandmv() {
    rm -r $2
    mv $1 $2
}
alias rmmv=rmandmv