出産前後の痔にはご注意!

現在定期的に20~80GBくらいのファイルのコピー(LAN経由でバックアップ)をDOSコマンドのXCOPYで行っているのですが、かなり時間がかかります。レジストリやPCの設定を変更して、もっと早く処理できないでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (5件)

バックアップ用途であれば、変更の無いファイルはコピーする必要がないと考えることができます。

robocopyを使用すればよいのではないかと思います。
http://www.atmarkit.co.jp/fwin2k/win2ktips/877ro …

あとはバックアップ元とバックアップ先に高速なネットワークインターフェースを増設し、それらを直接接続するなどでしょうか。さらにネットワークカードを追加してチーミングするなどの手法もいちおうありますがそのあたりはあまり効果が無いかもしれませんね。
    • good
    • 0

 MBではなくてGBですよね。

20~80GBというと、DVD4~16枚分のデータです。どのぐらい時間がかかるの書いてありませんが、かかるのが当然のようにも思えますが……。
 どうしても高速化したいのなら、パソコン同士を直接つなぐという方法もあります。
    • good
    • 0

>DOSコマンドのXCOPYで行っているのですが、かなり時間がかかります。

レジ
>ストリやPCの設定を変更して、もっと早く処理できないでしょうか?
無・理♪
XCOPYは最速の方です。
後はTeraCOPYのような独自バッファを使用した高速コピーツールを使用するしかないですね。それでもXCCOPYと大して変わらないと思いますけど…

コピー時間をもっと短くしたければネットワークをギガビットイーサに変更するとかコピー元ファイルのあるコンピュータのハードディスクを高速型に交換するしかありません。
つまり、ネットワーク機器/環境を改善するなどの物理的手段しかありません。
    • good
    • 1

レジストリでは難しいでしょう。


HDD回転速度のアップ、通信回線速度のアップなど、物理的な環境の見直しを考えて下さい。
    • good
    • 1

ネットワークの通信環境を良くしましょう。


無線をお使いなら有線を使うなどです。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qコピー速度が遅い

最近、同一ドライブ内やCFからのコピー速度が遅いことがあります。特に大量のファイルをコピーする際に遅くなりがちです。

コピー中の詳細を見てみたところ最初から遅いわけではなく、コピー中にだんだん速度が落ちていくようです。遅くなる時はPC自体も重たくなります。常駐ソフトは最低限に抑えていますし、他に起動しているソフトを消してみても改善しません。

OSはWindows7です。何が原因でしょうか。

Aベストアンサー

「最近」とおっしゃっているのが気になります。以前はそういうことはなかったということでしょうか。そうすると、No.2さんのご指摘のように、HDD が劣化して、読み出しに時間がかかる(読み出しに失敗して何回もトライするため)ので遅くなったということが考えられます。Crystal DiskInfo(次のサイトからダウンロード)でHDD の健全性をチェックしてください。
http://www.forest.impress.co.jp/library/software/crdiskinfo/

HDD に問題がなければ、やはり、それだけの時間がかかるのだと思います。
同一ドライブ内のコピーは、内蔵の異なったドライブへのコピーより遅くなります。それは、磁気ヘッドを、プラッター上の記録されている場所まで動かして、読み出し、書き込みの場所まで移動して書き込むという動作のためです。(シーク動作と言います。)

サイズの小さいファイルの大量コピーもシーク動作を繰り返しますので、遅くなります。

ファイルコピーのパフォーマンスを測定するツールで試してください。ファイルサイズにより著しい差があることがわかると思います。
http://www.forest.impress.co.jp/library/software/crystaldisk/

多少でも速くコピーしたいときは、コピー速度を向上させたコピーツールがありますので、大量のファイルコピーをたびたびするなら試してください。
I-O DATA のマッハコピー
http://www.forest.impress.co.jp/library/software/machcopy/
FastCopy
http://www.vector.co.jp/soft/dl/win95/util/se360695.html

「最近」とおっしゃっているのが気になります。以前はそういうことはなかったということでしょうか。そうすると、No.2さんのご指摘のように、HDD が劣化して、読み出しに時間がかかる(読み出しに失敗して何回もトライするため)ので遅くなったということが考えられます。Crystal DiskInfo(次のサイトからダウンロード)でHDD の健全性をチェックしてください。
http://www.forest.impress.co.jp/library/software/crdiskinfo/

HDD に問題がなければ、やはり、それだけの時間がかかるのだと思います。
同一ドラ...続きを読む

Q通常コピーとCMDでコピー速度の差の理由は?

WindowsXPです。
数が多かったりファイル容量が大きいファイルをコピーする際、ドラッグ&ドロップでコピーするより、XCOPYなどでコピーするほうがコピーし始めもコピー中も早いのですが、これはなぜでしょうか。
ドラッグ&ドロップのほうが、ファイル全体を一旦どこかにキャッシュしたり、ファイル全体にインデックスのようなものを付けたりする分遅くなるような感じなのでしょうか。

Aベストアンサー

Xcopyの方が速いのではなく、Explorerでコピー、移動が遅すぎるんですよ。
原因はわからないですが、7でも改善されてないので仕様ですね。
Winodws7、XPで、コピー、移動するときは、TeraCopyを使ってます。
ファイルを選択、コピー、貼り付けで使うのが多いです。
インストールすると、常駐のような感じでExplorerでのファイルのコピー等はTeraCopyが実行してくれます。
http://www.oshiete-kun.net/archives/2009/08/teracopy.html
http://www.forest.impress.co.jp/lib/sys/file/fileuty/teracopy.html

QDirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)

いろいろ調べましたが不明な点があり、質問します。

WindowsのDOSプロンプトでdirコマンドを打つとフォルダ・ファイルの一覧が表示されますが、その中にファイルサイズが表示されています。
このサイズを合計できるコマンドはありませんか?
DIRコマンドのオプションを調べましたがそれらしいものが見当たりません。
具体的には
C:\xxx\配下に50個程度のファイルがあります。
その50個の合計サイズを知りたいです。
xxxフォルダの親フォルダにはアクセス不可です。

ずーっと悩んでいます。よろしくお願いします。

なお、OSはWindowsNTか2000で使用予定です。

Aベストアンサー

カレントドライブ、カレントフォルダを
C:\xxx\
にした状態で、

dir /s /a-d

/sパラメータででサブディレクトリすべてを検索
/a-dパラメータでディレクトリ以外のファイル(つまり属性に関係なくすべてのファイル

これを実行すると最後にファイルの個数とファイルサイズの合計を表示します。

もし、隠し属性のファイルは合計しないのであれば、

dir /s

だけで良いと思われます。

QXCOPYで指定したフォルダとファイルをコピーしたい

C:\AAAフォルダとC:\AAA以下のファイルをコピーしたくて、
XCOPY C:\AAA D:\BBB /E
とすると、コピー先のD:\BBBにはAAAフォルダにあるファイルはコピーされるのですが、AAAフォルダそのものはコピーされません。
XCOPY C:\ D:\BBB /E
とすればコピーできるのですが、そうするとC:\のほかのフォルダもコピーされてしまいます。
EXCLUDEオプションを使うには指定するファイルが多いため、あまり使いたくありません。(コピーする前にMDでコピー先にAAAフォルダを作成するのもなるべく避けたい)
知っている方がいらしたら教えて下さい。

Aベストアンサー

xcopy /e C:\AAA D:\BBB\AAA
複数ファイルのコピーでコピー先が存在しないとき、ファイル名と見なすかディレクトリ名と見なすか聞いてきます。

応答を聞かれるのが嫌なら
echo d | xcopy /e C:\AAA D:\BBB\AAA
でいいはず。

Qbatである文字列内に特定の文字列が含まれているか確認したい

batファイルの中である変数「abc」の中に「test」という文字が含まれていたら○○を行なうという分岐を作成したいのですが、どのように行なえばよいのでしょうか?

そのまま、ずばりのお答えお待ちしております。

よろしくお願い致します。

Aベストアンサー

大文字小文字を区別しなくていいなら、

if not "%abc:test=%" == "%abc%" echo 含まれていた

区別するなら、

echo %abc% | find "test" >NUL
if not ERRORLEVEL 1 echo 含まれていた

Qxcopyで特定のファイルのみをコピーする方法

xcopyもしくはcopyコマンドを使用し、ディレクトリ内の特定のファイル(複数)を
コピーするにはどのようにしたら良いのでしょうか?

特定のファイルの数が多すぎるため、一行ずつコマンドを書くのは手間が掛るため、
何か良い方法があれば教えて頂きたいと思います。

excludeオプションを使用すれば特定のファイルを除外できるようですが、
反対の意味の特定のファイルのみをコピーしたいです。

例)
c:\test内は以下のファイルがあります。
・aaa.txt
・bbb.txt
・ccc.txt
・ddd.txt
・eee.txt

これらのファイルの内、bbb.txtとddd.txtとeee.txtをコピーしたいです。

Aベストアンサー

よくこんな感じでやってました。
バッチ用コマンドですがバッチファイルを作らずコマンドラインで実行させます。
( コピー先フォルダを C:\distdir\ とします。)

コマンドラインでこれ
for %a in ( bbb.txt ddd.txt eee.txt ) do xcopy c:\test\%a c:\distdir
を実行させると、

カッコ ( ) の中からファイル名を1個拾っては %a に代入し do 以下を実行します、
つまり以下の3コマンドに展開し1個ずつ実行します。
xcopy c:\test\bbb.txt c:\distdir
xcopy c:\test\ddd.txt c:\distdir
xcopy c:\test\eee.txt c:\distdir

尚、この場合は拡張子がいずれも txt なので、以下のように書くと文字数を若干減らせます。
1コマンドラインの文字数は限りがあるので、ファイル数が多くて他の部分を縮めたい時に有用です。
for %a in ( bbb ddd eee ) do xcopy c:\test\%a.txt c:\distdir

ところで、文法を正確に記憶してなくて恐縮ですが、
Windows 配下のコマンドプロンプトが備えるコマンドでは、
予め対象のファイル名リストをテキストファイルで作っておき、
そこからファイル名を1個ずつ拾ってコマンド実行させる事が可能です。

よくこんな感じでやってました。
バッチ用コマンドですがバッチファイルを作らずコマンドラインで実行させます。
( コピー先フォルダを C:\distdir\ とします。)

コマンドラインでこれ
for %a in ( bbb.txt ddd.txt eee.txt ) do xcopy c:\test\%a c:\distdir
を実行させると、

カッコ ( ) の中からファイル名を1個拾っては %a に代入し do 以下を実行します、
つまり以下の3コマンドに展開し1個ずつ実行します。
xcopy c:\test\bbb.txt c:\distdir
xcopy c:\test\ddd.txt c:\distdir
xcopy c:\test\eee.txt ...続きを読む

Qバッチファイル 文字列にスペースがある場合

for /f %%A in ('dir /b /s c:\a aa*.pdf') do copy "%%A" D:\

これはcドライブのa aaというフォルダ名の中を検索するコードですが、
フォルダ名にスペースがあるため、うまく動きません。

"a aa"のように""で囲ってみましたが、駄目でした。

どうすれば良いのか、教えていただきたいので、お願いします。

Aベストアンサー

for /f %%A in ('dir /b /s c:\"a aa"\*.pdf') do echo copy "%%A" D:\
のようにecho でどのようなコマンドが実行されているか確認しましょう。

この記述ではdirコマンドで表示されるパスの中に空白があるため %%A には空白までの文字列しか代入されません。
以下のように修正して試してみてください。

for /f "delims=" %%A in ('dir /b /s c:\"a aa"\*.pdf') do copy "%%A" D:\

Qバッチ処理でファイルの中身を変数に入れるやり方

あるファイルの中には1行の文字列があります。
このファイルをバッチで読み取り、変数に設定したいです。

例:
test.txt
abcacbacbacbacbacbacbacbacb

test,bat
set DATA=[test.txtを読み込んだ値]

よろしくお願い致します。

Aベストアンサー

これですね。

参考URL:http://www.upken.jp/kb/dqvgHNRUxwFDkmtoqEwfXHUjDrevNv.html

Qバッチファイルでサーバーのファイルをクライアントへコピーしたい

サーバーに保存されているファイルを、
クライアントのCドライブへコピーしたい。

各クライアントにバッチファイルを配布して、
それを実行するだけでコピーされるようにしたいのです。

初心者で申し訳ないのですが、何卒よろしくお願いします。
------------------------

下記の記述ですと、普通にサーバーのCドライブへファイルがコピーされます。
しかし、コピー先はバッチファイルを実行したクライアントのローカルディレクトリにしたいのです。

copy \\サーバー名\フォルダ名\ファイル名 C:\

Aベストアンサー

>下記の記述ですと、普通にサーバーのCドライブへファイルがコピーされます。

そんなはずはありません。何かの勘違いでしょう。

>copy \\サーバー名\フォルダ名\ファイル名 C:\

だと、バッチファイルを実行したPCのC:\にコピーされます。

copy \\サーバー名\フォルダ名\ファイル名 C:
と、最後の \ を削れば、バッチファイルがあるのと同じディレクトリにコピーされます。

QDOSコマンドで、標準出力を出力しないようにするには?

Windowsのバッチファイルでコマンドを実行する際、標準出力をディスプレイに表示したくないのですが、どのようにするのが、一般的なのでしょうか?
CDで実行するので、ファイルに出力はしたくありません。
UNIXとかだと、nullにパイプするようなのですが…。

Aベストアンサー

>UNIXとかだと、nullにパイプするようなのですが…。

リダイレクトですね。

同様です。
標準出力だけなら「c:\> command > nul」
エラー出力もなら「c:\> command > nul 2>&1」


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング