web-dev-qa-db-ja.com

進行状況を除いて、コマンドラインでrobocopyをサイレントにするにはどうすればよいですか?

私はrobocopyを使用してPowerShellスクリプトでバックアップを行っていますが、他のすべての情報ではなく、コピー中の進行状況のパーセンテージのみを表示したいという点を除いて、とても素晴らしいです。

他の情報はコマンドウィンドウを乱雑にします。コマンドウィンドウは、バックアップの全体的な進行状況を簡単に確認できるように、きれいでシンプルなものにします。

これは可能ですか?

ありがとう、アンドリュー

88
AndyGeek

次のオプションを使用してそれを行いました。

/njh /njs /ndl /nc /ns

ファイル名は引き続き表示されることに注意してくださいが、私にとっては問題ありません。

Robocopyの詳細については、 http://technet.Microsoft.com/en-us/library/cc733145%28WS.10%29.aspx にアクセスしてください

35
AndyGeek

次の2つのパラメーターを追加しました:/np /nfl

したがって、AndyGeek's answerからの5つのパラメーター(/njh /njs /ndl /nc /ns)と一緒にすると、次のようになり、サイレントになります。

ROBOCOPY [source] [target] /NFL /NDL /NJH /NJS /nc /ns /np

/NFL : No File List - don't log file names.
/NDL : No Directory List - don't log directory names.
/NJH : No Job Header.
/NJS : No Job Summary.
/NP  : No Progress - don't display percentage copied.
/NS  : No Size - don't log file sizes.
/NC  : No Class - don't log file classes.
159
R. Koene

出力をまったく必要としない場合、これが最も簡単な方法です。

robocopy src dest > nul

それでも情報が必要で、出力の一部のみを削除する場合は、R.Koene's answerのパラメーターを使用します。

13
SHernandez

PowerShellでは、次のものを使用します。

robocopy src dest | Out-Null

すべてのコマンドラインスイッチを覚える必要がなくなります。

12
Aaron Tribou

回避策として、完全にサイレントにしたい場合は、出力をファイルにリダイレクトします(必要に応じて後で削除します)。

Robocopy src dest > output.log
del output.log
2
HSM

また、robocopyは何もしなくても空行を印刷する傾向があります。次のようなコマンドを使用して、空の行をフィルタリングします。

robocopy /NDL /NJH /NJS /NP /NS /NC %fromDir% %toDir% %filenames% | findstr /r /v "^$"
1
TarmoPikaro

> nullは引用符では機能しません。バッチファイル名として> nullが表示されます。

Robocopyの出力は機能しませんでした!!!

新しいバッチファイルは次のとおりです。

robocopy /mir /B /r:1 /nfl /ndl /njh /njs /nc /ns /np c:\EnvBackup c:\offsite_backup\EnvBackup

robocopy /mir /B /r:1 /nfl /ndl /njh /njs /nc /ns /np c:\shares c:\offsite_backup\shares

robocopy /mir /B /r:1 /nfl /ndl /njh /njs /nc /ns /np c:\Quickbooks_Backup c:\offsite_backup\Quickbooks_Backup
0
Jason L