私が試したこと:
root@Host [/home1]# cp -f hello /home3
cp: omitting directory `hello'
root@Host [/home1]# cp -rf hello /home3
cp: overwrite `/home3/hello/.buildpath'? y
cp: overwrite `/home3/hello/.bash_logout'? y
cp: overwrite `/home3/hello/.project'? ^C
上書きするかどうかは常に尋ねられます。 mvを使用しても機能しません。だから私は何をすべきですか?
私が試した他のこと:
root@Host [/home1]# cp -rf hello /home3
cp: overwrite `/home3/hello/.buildpath'? y
cp: overwrite `/home3/hello/.bash_logout'? y
cp: overwrite `/home3/hello/.project'? ^C
root@Host [/home1]# cp -force hello /home3
cp: invalid option -- 'o'
Try `cp --help' for more information.
root@Host [/home1]# cp --remove-destination hello /home4
cp: omitting directory `hello'
root@Host [/home1]# cp --remove-destination hello /home3
cp: omitting directory `hello'
root@Host [/home1]# cp --remove-destination -r hello /home3
cp: overwrite `/home3/hello/.buildpath'? ^C
root@Host [/home1]#
cp
は、問題を引き起こしている何かにエイリアスされているか、関数のようです。エイリアス/関数を削除できます:
unalias cp
unset -f cp
今すぐオーバーライドするだけの場合は、command
コマンドを使用して、エイリアス/関数の定義をオーバーライドできます。
command cp [...]
これを完全に削除する場合は、おそらくbashスタートアップファイルを調べる必要があります。
確認せずに強制的に上書きするには、コマンドmvとオプション "-f"を使用する必要があります。オプションを表示するには、manを使用します。
man mv:
-f, --force
do not Prompt before overwriting
例:
mv -f test.tmp test.txt
Cp -rv/sourcefileordirectory/Destinationfolderを試してください
おそらくcpのエイリアスがあります。このエイリアスを上書きするには、次のようにします。
\cp -f hello /home3
これは、この呼び出しのためだけに上書きされるため、エイリアスの設定を変更しないという利点があります。
alias cp=cp
そして、それはこのセッションで尋ねることなくターゲットを上書きします。標準の動作として保存したい場合は、~/.bashrc
。