Як я можу зробити робокопію безшумною в командному рядку, окрім прогресу?


105

Я використовую robocopy для створення резервних копій із сценарієм PowerShell, і це досить приголомшливо, за винятком того, що я хотів би, щоб він показував лише відсоток прогресу, поки він копіює, а не всю іншу інформацію.

Інша інформація захаращує вікно команд, яке я б очистив і простий, щоб було легко побачити загальний хід резервного копіювання.

Чи можливо це?

Спасибі, Ендрю

Відповіді:


192

Я додав наступні 2 параметри: /np /nfl

Тож разом із 5 параметрами AndyGeek'sвідповіді, які /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%".
Скотт Чу

13
Це все ще виводить єдиний порожній рядок, який помітний у пакетних файлах.
wqw

7
/nc /nsне потрібно, коли /nfl /ndlзазначено.
Vojtěch Dohnal

3
@wqw, просто додай> NUL в EOL, і порожній рядок - це історія.
Трава

2
@ScottChu Це друкує 100% при використанні перемикача / mt. Я думаю, вам доведеться вирішити, чи хочете ви багатопотокове чи не відображається% s
хліб

40

Я зробив це за допомогою наступних варіантів:

/njh /njs /ndl /nc /ns

Зауважте, що ім’я файлу все ще відображається, але це добре для мене.

Для отримання додаткової інформації про роботокопію перейдіть на сторінку http://technet.microsoft.com/en-us/library/cc733145%28WS.10%29.aspx


3
/ nfl для придушення імені файлу
xagyg

12
З'являється, якщо ви використовуєте /mirабо /purgeзайві файли все ще записуються. Неможливо знайти спосіб вимкнути це.
bbodenmiller

1
зауважте, що при роботоскопії панель прогресу складає лише% на файл, не показує прогрес із загальною кількістю байтів, скопійованих із загальної /% від цього.
барлоп

Дуже цікаво @bbodenmiller вдячність ... Дуже дратує журнал цих файлів ...
toscanelli

18

Якщо ви взагалі не хочете виводу, це найпростіший спосіб:

robocopy src dest > nul

Якщо вам все-таки потрібна якась інформація і ви хочете лише зняти частини виводу, використовуйте параметри з R.Koene'sвідповіді.


5
Я > log:nulтестую на win8.1 x64, є порожній файл журналу. > nulпрацює як очікувалося.
Іван Ян

1
Файл "порожній", logякий він створює, навіть не справді порожній. Це просто збереження даних у альтернативний потік, який невидимий для Провідника, але дуже все ще присутній на диску. (Ви можете перевірити, скориставшись dir /rкомандою, щоб показати це.) @IvanYan правильна, > nulце правильна команда, щоб повністю відкинути вихід.
jmbpiano

16

У PowerShell я люблю використовувати:

robocopy src dest | Out-Null

Це дозволяє уникнути запам’ятовування всіх комутаторів командного рядка.


Роблячи це, він негайно вбив команду без попередження. Я використовував /PURGE.
Sawtaytoes

Out-Null не повинен впливати на виконання команди robocopy. Він просто перенаправляє вихідний потік. msdn.microsoft.com/en-us/powershell/reference/4.0/… Ви можете спробувати видалити Out-Null, щоб побачити, чи відкинутий вихід пропонує якийсь підказки до того, що відбувається.
Аарон Трибу

2

Якщо ви хочете, щоб він був абсолютно безшумним, це перенаправити висновок у файл (і, можливо, видалити його пізніше).

Robocopy src dest > output.log
del output.log

6
також> NUL просто виганяє вихід, і жодного файлу не турбуватися.
Sellorio

1
або труба Out-Nullв PowerShell
orad

2

Робокопія також має тенденцію до друку порожніх рядків, навіть якщо це нічого не робить. Я фільтрую порожні рядки за допомогою такої команди:

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

0

У nulls не працює> null. Він бачить> null як ім'я пакетного файлу.

Робокопія без вихідних не працювала !!!

Ось новий пакетний файл:

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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.