web-dev-qa-db-ja.com

コマンドラインでxcopyよりもcopyを使用する利点は何ですか。

Xcopyにはより多くのオプションがあることを知っていますが、xcopyではなくcopyを使用する利点はありますか?

35
Phil Hannent
  1. xcopyは外部プログラムですが、copyはインタープリターの一部です(cmd.execommand.com) 。つまり、xcopyが別のマシンまたはレスキューディスクに存在しない可能性があります。

    私たちはWindowsとレスキューCDを持っているので、それはもう実際には問題ではありません。

  2. copyはファイルを連結できます。

    copy file1 + file2 file3
    

    file1file2の内容を含むファイル(file)を作成します。

  3. copyは、ファイルだけでなく他のものもコピーできます。

    例えば、

    copy con file
    

    キーボード(コンソール)からfileに直接書き込むことができます。

    同様に、次を使用してファイルを印刷できます

    copy file prn
    copy file \\computer\printer
    

    後者は共有プリンター用です。

    上記を組み合わせることもできます:コマンド

    copy con prn
    

    プリンタに直接書き込むことができます。

39
Dennis

主な違いは、xcopyがフォルダ階層をコピーできることと、copyがファイルのみを処理することを意図していたことです(またはそうでした)。
とはいえ、copyを使用することで(機能面またはパフォーマンス面で)何も得られるものはないと思います。

xcopyでさえ、今日の基準では古くなっていることに注意してください。 Robocopy は、最新のWindowsプラットフォームで選択されている新しいコピーユーティリティです。

また、言及されているすべてのコピーユーティリティには、詳細情報を含む可能性のあるWikipediaの記事があります。

22
Der Hochstapler

だれでも二重フロッピーPCのDOSを覚えていますか? Xcopyは、1回の読み取りで複数のファイルをメモリにロードしてコピーを高速化することにより、読み取りシークの数を最小限に抑えます。おそらくまだHDDで些細な速度の改善を行います。

1
Bill

Powershellを「コマンドライン」と考える場合は、別の「コピー」コマンドを使用できます。 Powershellの「コピー」は、明らかにコマンドレットにマッピングされます。

他の回答で言及されていないことの1つは、Powershellがシェルレベルで深く埋め込まれたワイルドカードを展開するため、このコマンドが機能することです(DOSからではなくPSからのみ)。

% copy G:\git\one\source\*\morePath\SomePattern*.dll destDir

一方、xcopyは単一のソースを受け入れるため、「ファイルが見つかりません」と主張します。

0
crokusek