thi*_*114 604 linux command-line overwrite cp
我正在尝试使用该cp命令并强制覆盖.
我试过了cp -rf /foo/* /bar,但仍然提示我确认每次覆盖.
fav*_*tti 1038
你可以这样做yes | cp -rf xxx yyy,但我的gutfeeling说,如果你以root身份做 - 你的.bashrc或者.profile别名cp为cp -i,那么大多数现代系统(主要是RH衍生物)都会根据配置文件进行操作.
您可以通过alias在命令提示符下运行来检查现有别名,或which cp仅检查别名cp.
如果您确实定义了别名,则运行unalias cp将取消当前会话的别名,否则您可以从shell配置文件中删除它.
您可以暂时绕过别名并使用前缀为命令的非别名版本\,例如\cp whatever
pgl*_*pgl 266
这可能是cp因为已经混淆了类似的东西cp -i.cp直接打电话应该有效:
/bin/cp -rf /zzz/zzz/* /xxx/xxx
Run Code Online (Sandbox Code Playgroud)
解决此问题的另一种方法是使用yes命令:
yes | cp -rf /zzz/zzz/* /xxx/xxx
Run Code Online (Sandbox Code Playgroud)
Chr*_*ris 111
正如其他一些答案所述,您可能会使用某个映射cp到cp -i或类似的别名.您可以通过在其前面加上反斜杠来运行没有任何别名的命令.在你的情况下,试试吧
\cp -r /zzz/zzz/* /xxx/xxx
Run Code Online (Sandbox Code Playgroud)
反斜杠将暂时禁用您调用的任何别名cp.
cod*_*ing 59
你可能在别处有一个别名,映射cp到cp -i; 因为使用默认设置,cp不会要求覆盖.检查你.bashrc,你的.profile等.
请参阅cp manpage:仅在-i指定参数时才会cp在覆盖之前实际提示.
您可以通过以下alias命令检查:
$ alias
alias cp='cp -i'
alias diff='diff -u'
....
Run Code Online (Sandbox Code Playgroud)
要取消定义别名,请使用:
$ unalias cp
Run Code Online (Sandbox Code Playgroud)
Arn*_*Roa 44
正如其他答案所述,如果cp是别名,可能会发生这种情况cp -i.
您可以\在cp命令之前附加a 以使用它而不使用别名.
\cp -fR source target
Run Code Online (Sandbox Code Playgroud)
Avs*_*riy 18
默认情况下cp为别名cp -i.您可以检查,键入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'
Run Code Online (Sandbox Code Playgroud)
要解决此问题,请使用/bin/cp /from /to命令cp /from /to
Ada*_*ick 18
所以我经常遇到这种情况,因为我将 cp 别名为cp -iv,我发现了一个巧妙的技巧。事实证明,while-i和-n两者都取消了之前的覆盖指令,-f但不会。但是,如果您使用-nf它会增加清除-i. 所以:
cp -f /foo/* /bar <-- Prompt
cp -nf /foo/* /bar <-- No Prompt
Run Code Online (Sandbox Code Playgroud)
很整洁吧?/死尸
小智 7
cp 通常是这样的别名
alias cp='cp -i' # i.e. ask questions of overwriting
Run Code Online (Sandbox Code Playgroud)
如果您确定要进行覆盖,请使用以下命令:
/bin/cp <arguments here> src dest
Run Code Online (Sandbox Code Playgroud)
我找到了这个
'cp' -rf * /data/danalonso_testing/target/
Run Code Online (Sandbox Code Playgroud)
来源:https://superuser.com/questions/358843/how-to-replace-all-the-contents-from-one-folder-with-another-one/358851