我们在常规使用cp命令的时候,如果目标位置已经有该文件,系统会询问我们是否覆盖目标文件,需要输入y来确认。如果文件过多,可能觉得会很麻烦。
我们先来看一下原因:
sly@fskj-u-sly:~$ cp /var/tmp/test.txt /tmp cp:是否覆盖"/tmp/test.txt"? n sly@fskj-u-sly:~$ alias cp alias cp='cp -i' sly@fskj-u-sly:~$ cp --help |grep -A 1 '\-\-interactive' -i, --interactive prompt before overwrite (overrides a previous -n option)
我们可以看到,这个cp做了alias,而-i的意思是覆盖前提示。所以我们可以用一下几种方法跳过提示:
sly@fskj-u-sly:~$ \cp /var/tmp/test.txt /tmp #1.命令前加反斜线可以忽略alias sly@fskj-u-sly:~$ /bin/cp /var/tmp/test.txt /tmp #2.使用命令的全路径 sly@fskj-u-sly:~$ unalias cp #3.先取消别名再复制(但不推荐这样做) sly@fskj-u-sly:~$ cp -n /var/tmp/test.txt /tmp