Unix 将一个目录替换为另一个目录
在Unix 将一个目录替换为另一个目录,unix,mv,rm,Unix,Mv,Rm,在unix中,如果我想用另一个文件(例如bar)替换一个文件(例如foo),我会调用 $ mv bar foo foo将消失,bar将取其名称 然而,如果我想用另一个目录替换一个目录(同样是,foo和bar),这是行不通的: $ mv bar foo 在这里,bar目录将被移动到foo目录中 要用foo替换bar,我知道我能做到 $ rm -r foo $ mv bar foo 但是,有没有一种方法可以通过一个命令来实现这一点呢?这就是mv的工作原理,当目标目录不存在时,它将执行移动/重命
unix
中,如果我想用另一个文件(例如bar
)替换一个文件(例如foo
),我会调用
$ mv bar foo
foo
将消失,bar
将取其名称
然而,如果我想用另一个目录替换一个目录(同样是,foo
和bar
),这是行不通的:
$ mv bar foo
在这里,bar
目录将被移动到foo
目录中
要用foo
替换bar
,我知道我能做到
$ rm -r foo
$ mv bar foo
但是,有没有一种方法可以通过一个命令来实现这一点呢?这就是mv的工作原理,当目标目录不存在时,它将执行移动/重命名,当目标目录存在时,它将把源目录移动到mv中。 如果确实需要经常这样做,并且希望简化此操作,可以使用alias,例如smth,如下所示:
rmandmv() {
rm -r $2
mv $1 $2
}
alias rmmv=rmandmv