Linux取消cp命令覆盖文件提示的方法

在Linux系统中使用cp命令来拷贝文件 , 但是使用cp命令把文件复制到dir目录中的时候总会提示是不是要覆盖文件 。那么怎么样取消提示让Linux直接复制文件呢?

Linux取消cp命令覆盖文件提示的方法


实际上这个提示是一个很好的功能 , 它能够防止我们由于疏忽对系统造成的损害 , 但如果不希望看到这些交互的提示信息呢?比如我们需要写一个脚本 , 将某些文件安装到指定的目录下 , 这时我们肯定不希望看到提示 。
可以试一下 -f 选项 , -f 一般表示强制执行(force) 。
cp -f file dir
但好像结果并不像我们希望的那样 , 系统依然会有覆盖提示 。为什么呢?
原因很简单 , 系统将cp命令alias为cp -i 。
当我们执行cp命令的时候 , 系统往往执行的是cp -i , -i 选项表示有交互的提示信息 , 
所以执行cp -f的时候 , 系统实际执行的是cp -i -f , 所以仍然会有覆盖提示 。
可以执行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’
alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde’
想要执行原始的cp也很简单:
1.在调用cp的时候加入绝对路径(可通过whereis cp命令得到) , 如
/bin/cp -f file dir
2.通过直接执行下面的语句调用系统原始的命令:
\cp -f file dir
3.在~/.bashrc里面注释掉 Alias cp=‘cp -i’
4.unalias cp  , 然后再使用cp , 但使用后还原alias cp=‘cp -i’
【Linux取消cp命令覆盖文件提示的方法】 以上就是Linux取消cp命令覆盖文件提示的方法了 , 取消掉这个提示 , 就可以直接拷贝文件 , 拷贝的速度也会快很多 。

    推荐阅读