cp强制覆盖与不覆盖拷贝方法

cp强制覆盖,不用处理cp: overwrite

当我们使用命令cp -r 复制文件或者文件夹的时候,当目标地址中包含有相同的文件时,会提示“cp: overwrite”。

这是因为bash alias设置的alias cp=’cp -i’,也就是说当Linux下输入cp命令实际上运行的是cp -i。通过cp --help查看-i的功能,如下:

[root@ljh37232node cmc]# cp --help
Usage: cp [OPTION]... [-T] SOURCE DEST
  or:  cp [OPTION]... SOURCE... DIRECTORY
  or:  cp [OPTION]... -t DIRECTORY SOURCE...
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

Mandatory arguments to long options are mandatory for short options too.

  -i, --interactive            prompt before overwrite (overrides a previous -n
                                  option)

 prompt before overwrite,就表示当需要拷贝的目录下有重复文件就会提示overwrite。当重复文件太多此时就比较麻烦。


如下方法解决不再提示:
第一种:在cp命令前加符号“\”

\cp -r directory Destination Path 

第二种:直接调用/bin/cp

/bin/cp -r directory Destination Path

不覆盖拷贝方法

某些时候在拷贝文件时,可能希望跳过某些已经在目标文件夹中已存在的文件。此时可通过添加-n解决。

cp -rn directory Destination Path

猜你喜欢

转载自blog.csdn.net/h363659487/article/details/126052250
今日推荐