web-dev-qa-db-ja.com

エラーを無視して多くのファイルをコピーする

破損したハードドライブからファイルをコピーしようとしています。それらのすべてがコピーするわけではありません-一部にはCRCエラーがあり、停止します。それらのファイルをスキップして残りのコピーを続行したいのですが、エラーウィンドウのオプションの1つをクリックするまで、コピープロセスは停止します。すべてをコピーし、OSにそのプロンプトを抑制し、破損したファイルをコピーしないように指示する方法はありますか?

これはWindows 7上にあります。

14
Goro

最も速い方法は、次のようなコンテキストで、コマンドプロンプトインスタンスを介してxcopyを使用することです。

xcopy $SOURCE $DESTINATION /C /E /Q 

/ Cフラグを指定すると、xcopyはコピーに関する問題を無視します。/Eフラグはxcopyにフォルダー(空のフォルダーも含む)をコピーするように指示し、/ Qフラグはそれを静かな操作にします(それ以外の場合は、コピーされたものごとにエントリーを取得します)。

例は次のとおりです。

xcopy d:\*.* c:\recovery /C /E /Q
15
Rilgon Arcsinh
 robocopy.exe with /r:0 /w:0 

最初のパスでは、次に/r:1

6
fstx

多分いくつかの簡単なPowershellスニペット?

copy-item -path E:\myfolders -destination C:\newfolder -container -force -recurse -erroraction continue -warningaction continue -confirm:$false

実行するには、Powershellコンソール(XP以降のすべてのWindowsで利用可能)を開き、-pathおよび-directoryパラメーターを開始フォルダーと宛先フォルダーに変更し、コマンドをPSウィンドウにコピーしてEnterキーを押します。コピーできない場合は、コンソールのプロパティでクイック編集モードを有効にします。これは、Win7の右マウスボタンの下にあるマップの貼り付けオプションです。

空白のような名前に特別な記号がある場合、引用符 ''でパスを閉じる必要がある場合があります。

Powershellで実行すると、すべてのファイルとサブディレクトリが指定したディレクトリにコピーされます。指定されたファイルに何らかのエラーがあってもコピーを続行します。コマンドでコピーできないすべての壊れたファイルについて、コンソールに多くの赤い出力が表示されます。これらを表示したくない場合は、erroractionをサイレントに続行するように変更してください。

3
M'cin

Xcopyオプションは「スペース不足」エラーで失敗します。たとえば、このリンクを参照してください。

http://en.wikipedia.org/wiki/XCOPY#Limitation

ユーザーの提案に従って最初にxcopyを試しましたが、Windows 7に含まれているrobocopyを使用しましたが、これは成功しました。

robocopyソースの宛先/ E

/ Eは、空のディレクトリを再帰的に使用します。

http://en.wikipedia.org/wiki/Robocopy#Common_usage_scenarios

2
DaveCore82

以前は TeraCopy を使用していました。別のオプションは、ブロックレベルのコピーです。たとえば、ddまたはディスクのクローン作成ユーティリティを使用します。個人的には、ライブLinux CDからブートし、データが重要な場合はdd_rescue/ddrescueを使用します。

2
rob

「ロードキルの止められない複写機」に出くわした。それはグラフィックインターフェースとしてあり、それらの場合のために特別に設計されました。

1
Decio