Xcopyにはより多くのオプションがあることを知っていますが、xcopyではなくcopyを使用する利点はありますか?
xcopyは外部プログラムですが、copyはインタープリターの一部です(cmd.exe、command.com) 。つまり、xcopyが別のマシンまたはレスキューディスクに存在しない可能性があります。
私たちはWindowsとレスキューCDを持っているので、それはもう実際には問題ではありません。
copyはファイルを連結できます。
copy file1 + file2 file3
file1とfile2の内容を含むファイル(file)を作成します。
copyは、ファイルだけでなく他のものもコピーできます。
例えば、
copy con file
キーボード(コンソール)からfileに直接書き込むことができます。
同様に、次を使用してファイルを印刷できます
copy file prn
copy file \\computer\printer
後者は共有プリンター用です。
上記を組み合わせることもできます:コマンド
copy con prn
プリンタに直接書き込むことができます。
主な違いは、xcopy
がフォルダ階層をコピーできることと、copy
がファイルのみを処理することを意図していたことです(またはそうでした)。
とはいえ、copy
を使用することで(機能面またはパフォーマンス面で)何も得られるものはないと思います。
xcopy
でさえ、今日の基準では古くなっていることに注意してください。 Robocopy は、最新のWindowsプラットフォームで選択されている新しいコピーユーティリティです。
また、言及されているすべてのコピーユーティリティには、詳細情報を含む可能性のあるWikipediaの記事があります。
だれでも二重フロッピーPCのDOSを覚えていますか? Xcopyは、1回の読み取りで複数のファイルをメモリにロードしてコピーを高速化することにより、読み取りシークの数を最小限に抑えます。おそらくまだHDDで些細な速度の改善を行います。
Powershellを「コマンドライン」と考える場合は、別の「コピー」コマンドを使用できます。 Powershellの「コピー」は、明らかにコマンドレットにマッピングされます。
他の回答で言及されていないことの1つは、Powershellがシェルレベルで深く埋め込まれたワイルドカードを展開するため、このコマンドが機能することです(DOSからではなくPSからのみ)。
% copy G:\git\one\source\*\morePath\SomePattern*.dll destDir
一方、xcopyは単一のソースを受け入れるため、「ファイルが見つかりません」と主張します。