指定されたファイルがすでに存在する場合、cpとmv

指定されたファイルがすでに存在する場合、cpとmv

doneというファイルがすでに存在する場合は、次のコマンドを実行するとどうなりますか?

$ cp to_do done
$ mv to_do done

ベストアンサー1

done内容に置き換えられますto_do

簡単なテストでこれを確認できます。

$ echo a > done
$ echo b > to_do
$ cp to_do done 
$ cat done
b

そして

$ echo a > done
$ echo b > to_do
$ mv to_do done
$ cat done
b

編集する

コメントに基づいたいくつかの追加情報

  • donedoneまたはがディレクトリの場合は置き換えられませんto_dodoneディレクトリの場合、ファイルは移動to_do/コピーされます。存在する目次。to_doディレクトリの場合は、エラーメッセージが表示されます。
  • ファイルを上書きするときに指示し、-i警告mvするオプションを使用してください。cp
  • 一部のディストリビューションでは、cpandmvはand(特にrootユーザーの場合)のエイリアスです。cp -imv -i

おすすめ記事