Start-Transcript і Stop-Transcript.
В PowerShell починаючи з третьої версії є два цікавих командлет - Start-Transcript і Stop-Transcript. З їх допомогою ми можемо записати в текстовий файл всі дії, вироблені в поточному сеансі PowerShell. Як випливає з їх назви, Start-Transcript призначений для початку запису, а Stop-Transcript для її завершення.
В найпростішому варіанті для початку запису досить виконати команду Start-Transcript без параметрів. В цьому випадку в профілі користувача, у папці Documents буде автоматично створений текстовий файл приблизно такого виду PowerShell_transcript.20140403134407.txt. Як бачите, в імені файлу міститься точна дата і час початку запису.
При бажанні можна дати файлу більш осмислене ім'я, наприклад ось так:
Start-Transcript -Path C: \ Logs \ log01.txt -NoClobber
Тут ми вказуємо проводити запис в файл log01.txt, а параметр NoClobber забороняє перезаписувати існуючий файл. Відповідно, якщо у вказаній директорії виявиться файл файл з таким-же ім'ям, то буде видана помилка.Для продовження запису в існуючий файл можна скористатися параметром Append, в цьому випадку запис буде проводитися в кінець файлу. Ну і для запису в файл з атрибутом «лише для читання» потрібно додати параметр Force, наприклад:
Start-Transcript -Path C: \ Logs \ log01.txt -Append -Force
Далі виробляємо необхідні дії і закінчуємо запис командою Stop-Transcript.Все, що відбувалося між цими двома командами, буде відображено в файлі.
А ось вміст файлу . Все досить просто і наочно. Оскільки Start-Transcript \ Stop-Transcript зберігають в тому числі і всі помилки і попередження, їх особливо зручно використовувати в скриптах, для визначення причин, по яких скрипт не відпрацьовані належним чином.
І один важливий момент. Командлети Start-Transcript і Stop-Transcript працюють тільки з консолі PowerShell, при спробі запустити запис в редакторі PowerShell ISE буде видана помилка. Це обмеження можна обійти, завантаживши спеціальний модуль Start-Transcript for ISE Editor.
.