linux命令cp强制覆盖
linux命令cp强制覆盖操作怎么完成呢?其实这是个伪命题,因为cp命令默认是强制覆盖的。有人说我胡说,他们的理由是,当你执行下面的命令的时候
$ mkdir tmp
$ touch tmp/my.txt
$ touch my.txt
$ cp my.txt ./tmp/
会询问你是不是需要覆盖。但是如果你执行这个命令就会找到问题所在:
$ alias
alias cp='cp -i'
alias l.='ls -d .* –color=auto'
alias ll='ls -l –color=auto'
alias ls='ls –color=auto'
alias mv='mv -i'
alias rm='rm -i'
发现了吧,其实你执行 cp实际上执行 cp -i,而 -i这个参数就是询问覆盖。因此你有2个方法解决这个问题:
方法一:直接调用cp命令本身,
/bin/cp my.txt ./tmp
方法二:利用管道,将yes传给cp
yes | cp my.txt ./tmp
版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.