如何强制 cp 命令覆盖而无需确认
cp 命令(代表copy)是 Linux 和其他类 UNIX 操作系统上常用的命令之一,用于复制文件和目录。在本指南中,我们将展示如何在 Linux 中强制cp 命令覆盖复制操作而无需确认。
通常,当您运行cp 命令时,它会覆盖目标文件或目录,如图所示。
# cp bin/git_pull_frontend.sh test/git_pull_frontend.sh
要以交互模式运行cp,以便它在覆盖现有文件或目录之前提示您,请使用-i
如图所示的标志。
# cp -i bin/git_pull_frontend.sh project1/git_pull_frontend.sh
默认情况下,现代 Linux 发行版(尤其是Red Hat Enterprise Linux ( RHEL ) 系列中的发行版)带有cp 命令的别名,使用户能够以交互模式运行cp 命令。Debian和Ubuntu衍生产品可能并非如此。
要检查所有默认别名,请运行别名命令,如下所示。
# alias
上图中突出显示的别名yes
表示当您运行该命令时,默认情况下它将以交互模式运行。即使您使用该命令,shell 仍会提示您确认覆盖。
# yes | cp -r bin test
强制覆盖的最佳方法是在cp 命令前使用反斜杠,如下例所示。这里,我们将bin
目录的内容复制到test
目录。
# \cp -r bin test
或者,您可以取消当前会话的cp 别名,然后以非交互模式运行cp 命令。
# unalias cp # cp -r bin test
有关更多信息,请参阅cp 命令手册页。
# man cp
如果您有任何疑问,请通过下面的反馈表询问我们。