官术网_书友最值得收藏!

Recording sessions with transcripts

When working in PowerShell doing various tasks, I find myself doing something that I then want to document or turn into a function and I have to ask myself What did I just do?, Do I know all of the variables I had previously set?, Do I know all the objects I am using?, What kind of authentication am I using?, and so on.

The PowerShell console and ISE have some level of in-built history, but if you're doing large tasks across multiple server environments, this history quickly becomes too small.

Enter PowerShell transcripts. Transcripts are a great way of recording everything you do in a PowerShell session and saving it in a text file for later review.

How to do it...

Carry out the following steps:

  1. Open the PowerShell console (not the ISE) and begin recording a transcript in the default location by executing Start-Transcript.
    How to do it...
  2. Stop the recording by executing Stop-Transcript.
  3. Begin recording a transcript into a different location by calling Start-Transcript with the –Path switch:
    How to do it...

How it works...

In the first step, we execute the command Start-Transcript, which automatically creates transcript under the user's My Documents folder. Each transcript file is named with a unique timestamp that ensures files don't overwrite or conflict with each other. We can stop the recording by then executing Stop-Transcript.

In the third step, we tell PowerShell to save the transcript file to C:\temp\foo.txt. When pointing transcripts to an existing file, PowerShell will attempt to append to the file. If the file is read-only, using the –Force command will instruct PowerShell to attempt to change the permissions on the file, and then append to it.

There's more...

  • Transcript limitations: Session transcripts only work with the PowerShell console, and not the PowerShell ISE. The ISE helps overcome some of this limitation by providing a larger scroll-back area, but if you want to use transcripts, you have to use the console application.
  • Fun with transcripts: Also, because transcripts capture anything typed or written to the screen, you need to be careful what you run. For instance, if you run the following commands, you will result in a recursive loop that has to be manually stopped:
    There's more...

See also

  • See the Creating and using PowerShell profiles recipe for information on how to automatically start transcripts for your sessions.
主站蜘蛛池模板: 林州市| 澄城县| 海淀区| 泌阳县| 佛山市| 宁远县| 嘉禾县| 苍南县| 文成县| 大竹县| 防城港市| 吕梁市| 荔波县| 新乡县| 招远市| 沾化县| 正安县| 通许县| 化隆| 泰州市| 大理市| 红桥区| 莱西市| 琼海市| 红安县| 衡东县| 曲阳县| 思茅市| 鸡西市| 泉州市| 双峰县| 永平县| 滦南县| 仙桃市| 呼伦贝尔市| 张家川| 汝阳县| 南漳县| 乌拉特前旗| 泸西县| 卢龙县|