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


105

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

他の情報はコマンドウィンドウを散らかしますが、バックアップの全体的な進行状況を簡単に確認できるようにすっきりとシンプルにしています。

これは可能ですか?

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

回答:


192

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

したがって、AndyGeek's回答からの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.

2
「100%」というメッセージが表示されたままです。
Scott Chu

13
これでも、バッチファイルで目立つ単一の空行が出力されます。
wqw 2014年

7
/nc /ns/nfl /ndl指定した場合は不要です。
VojtěchDohnal

3
@ wqw、EOLに> NULを追加するだけで、空の行は履歴です。
ハーブ

2
@ScottChu / mtスイッチを使用すると、100%が出力されます。マルチスレッドにするか、%sを表示しないかを決める必要があると思います
Loaf

40

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

/njh /njs /ndl /nc /ns

ファイル名は引き続き表示されますが、私には問題ありません。

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


3
/ nflでファイル名を抑制
xagyg

12
使用する/mir/purge、余分なファイルがまだログに記録されている場合に表示されます。それをオフにする方法が見つかりません。
bbodenmiller

1
robocopyの場合、進行状況バーはファイルごとの%であり、合計のうちのコピーされたバイトの総数/%の進行状況を表示しないことに注意してください。
barlop 14

非常に興味深い@bbodenmillerへの感謝...これらのファイルのログ記録は非常に面倒です...
toscanelli

18

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

robocopy src dest > nul

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


5
> log:nulwin8.1 x64でテストすると、空のログファイルがあります。> nul期待どおりに動作します。
Ivan Yan

1
logこれが生成する「空の」ファイルは本当に空でもありません。これは、エクスプローラーからは見えないが、ディスク上にまだ存在している代替ストリームにデータを保存するだけです。(dir /rそれを表示するコマンドを使用して確認できます。)@IvanYanは正しい> nulです。出力を完全に破棄する正しいコマンドです。
jmbpiano 2016年

16

PowerShellでは、次のように使用します。

robocopy src dest | Out-Null

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


これを行うと、警告なしにコマンドが即座に強制終了されました。使っていました/PURGE
Sawtaytoes

Out-Nullはrobocopyコマンドの実行に影響を与えません。単に出力ストリームをリダイレクトします。msdn.microsoft.com/en-us/powershell/reference/4.0/…Out-Nullを削除して、破棄された出力が何が起こっているかの手掛かりを提供しているかどうかを確認してみてください
アーロントリボー2017年

2

完全にサイレントにする場合の回避策は、出力をファイルにリダイレクトすることです(オプションで後で削除することもできます)。

Robocopy src dest > output.log
del output.log

6
また、> NULは出力をチャックするだけで、心配するファイルはありません。
Sellorio 2014

1
またはOut-Null、PowerShellでパイプ
orad

2

robocopyは、何も実行しない場合でも、空の行を印刷する傾向があります。私はこのようなコマンドを使用して空の行をフィルタリングしています:

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

0

> 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

-1

ファイルにリダイレクトして後で削除する必要はありません。試してください:

Robocopy src dest > null 

2
これによりファイルが作成されnull、ログがファイルに書き込まれます。ストレージドライブの書き込みを犠牲にして、コマンドラインでそれを静かにします。
Sawtaytoes 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.