我正在尝试使用cp命令并强制覆盖。
我尝试过cp-rf/foo/*/bar,但仍然会提示我确认每个覆盖。
我正在尝试使用cp命令并强制覆盖。
我尝试过cp-rf/foo/*/bar,但仍然会提示我确认每个覆盖。
当前回答
默认情况下,cp的别名为cp-i。您可以检查它,键入别名,然后可以看到类似的内容:
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'
要解决这个问题,只需使用/bin/cp/from/To命令,而不是cp/from_To命令
其他回答
如果您想在全局级别保持别名不变,并且只想更改脚本。
只需使用:
别名cp=cp
然后编写后续命令。
cp通常是这样的别名
alias cp='cp -i' # i.e. ask questions of overwriting
如果确定要进行覆盖,请使用以下命令:
/bin/cp <arguments here> src dest
正如其他答案所指出的,如果cp是cp-i的别名,这可能会发生。
您可以在cp命令之前附加一个\,以使用它而不使用别名。
\cp -fR source target
它不是cp-i。如果您不想被要求确认,它是cp-n;例如:
cp -n src dest
或者在目录/文件夹的情况下:
cp -nr src_dir dest_dir
也可以使用此命令:
cp-ru/zzz/zzz/*/xxx/xxx
它会用新文件更新现有文件。