web-dev-qa-db-ja.com

確認なしで既存のファイルをコピーしますか?

大量のファイルをコピーして上書きする必要があるので、次のコマンドを使用しました。

# cp -Rf * ../

しかし、同じ名前のファイルが宛先フォルダーに存在するときはいつでも、私はこの質問を受けます:

cp: overwrite `../ibdata1'? 

問題は、上書きされるファイルが約200個あり、Y then Enterを200回押すのが正しい方法だとは思わないことです。

それで、その正しい方法は何ですか?

22
Itai Ganot

できるよ yes | cp -rf myxx、またはルートとして実行する場合-.bashrcまたは.profileにはcpからcp -iへのエイリアスがあり、最新のほとんどのシステムはルートプロファイルに対してそれを行います。

一時的にエイリアスをバイパスして、エイリアスのないコマンドのバージョンを使用することができます。\cp何でも

43
TBI Infotech

RHELとCentOSが、誤ってファイルを上書きして削除しないようにrootユーザーのエイリアスを設定することで、初心者ユーザーを保護しようとしたことを知っていますか?

alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'

-iスイッチは、既存のファイルを変更または削除するときに確認が必要なものです。エイリアスの展開はコマンドの実行前に行われるため、--force -fスイッチを使用する場合でも確認が必要です。

エイリアスを完全に削除するには、/root/.bashrcファイルを編集するか、unalias cpを使用したセッションの期間中、または単一のコマンドで次のいずれかを使用してエイリアスを削除します。

  • フルパスを使用してください/bin/cp
  • コマンドを引用符"cp"または'cp'で囲みます
  • コマンドキーワードを使用します。 command cp
  • コマンドをエスケープする\cp
14
HBruijn