Start-Transcript
テキスト ファイルへの PowerShell セッションのすべてまたは一部のレコードを作成します。
構文
Start-Transcript
[[-Path] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Transcript
[[-LiteralPath] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Transcript
[[-OutputDirectory] <String>]
[-Append]
[-Force]
[-NoClobber]
[-IncludeInvocationHeader]
[-UseMinimalHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Start-Transcript
コマンドレットは、PowerShell セッションのすべてまたは一部のレコードをテキスト ファイルに作成します。 トランスクリプトには、ユーザーが入力したすべてのコマンドと、コンソールに表示されたすべての出力が含まれます。
既定では、 Start-Transcript
は、既定の名前を使用して次の場所にトランスクリプトを格納します。
- Windows の場合:
$HOME\Documents
- Linux または macOS の場合:
$HOME
既定のファイル名は PowerShell_transcript.<computername>.<random>.<timestamp>.txt
です。
Windows PowerShell 5.0 以降では、 Start-Transcript
はすべてのトランスクリプトの生成されたファイル名にホスト名を含めます。 ファイル名には、2 つ以上のトランスクリプトを同時に開始するときに上書きや重複を防ぐために、名前にランダムな文字も含まれています。 コンピューター名を含めると、トランスクリプトを一元化された場所に格納する場合に便利です。 ランダムな文字列を使用すると、ファイル名を推測してファイルへの不正アクセスを取得できなくなります。
ターゲット ファイルにバイトオーダー マーク (BOM) がない場合、 Start-Transcript
は既定でターゲット ファイル内のエンコード Utf8NoBom
します。
例
例 1: 既定の設定でトランスクリプト ファイルを開始する
Start-Transcript
このコマンドは、既定のファイルの場所を使用してトランスクリプトを開始します。
例 2: 特定の場所でトランスクリプト ファイルを開始する
Start-Transcript -Path "C:\transcripts\transcript0.txt" -NoClobber
このコマンドは、C:\transcripts
のTranscript0.txt
ファイルでトランスクリプトを開始します。 NoClobber パラメーターは、既存のファイルが上書きされないようにします。 Transcript0.txt
ファイルが既に存在する場合、コマンドは失敗します。
例 3: 一意の名前でトランスクリプト ファイルを開始し、ファイル共有に保存する
次の例では、共有の場所に格納するのに十分な一意の名前を持つトランスクリプト ファイルを作成します。 ファイル名は、ユーザーの名前、PowerShell を実行しているコンピューターのホスト名、PowerShell のバージョン、および日付と時刻から作成されます。 トランスクリプトは、 \\Server01\Transcripts
ファイル共有に格納されます。
$sharepath = '\\Server01\Transcripts'
$username = $env:USERNAME
$hostname = hostname
$version = $PSVersionTable.PSVersion.ToString()
$datetime = Get-Date -f 'yyyyMMddHHmmss'
$filename = "Transcript-${username}-${hostname}-${version}-${datetime}.txt"
$Transcript = Join-Path -Path $sharepath -ChildPath $filename
Start-Transcript
トランスクリプト ファイルへの完全なパスは、 $Transcript
基本設定変数に格納されます。 $Transcript
基本設定変数の詳細については、about_Preference_Variablesを参照してください。
パラメーター
-Append
このコマンドレットによって、既存のファイルの末尾に新しいトランスクリプトが追加されることを示します。 Path パラメーターを使用して、ファイルを指定します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Force
コマンドレットがトランスクリプトを既存の読み取り専用ファイルに追加することを許可します。 読み取り専用ファイルで使用した場合、このコマンドレットはファイルのアクセス許可を読み取り/書き込みに変更します。 このパラメーターを使用する場合、コマンドレットはセキュリティ制限をオーバーライドできません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-IncludeInvocationHeader
このコマンドレットは、コマンドの実行時にタイムスタンプをログに記録することを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-LiteralPath
トランスクリプト ファイルの場所を指定します。 Path パラメーターとは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 一重引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に通知します。
型: | String |
Aliases: | PSPath, LP |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-NoClobber
このコマンドレットが既存のファイルを上書きしないことを示します。 既定では、トランスクリプト ファイルが指定したパスに存在する場合、 Start-Transcript
は警告なしでファイルを上書きします。
型: | SwitchParameter |
Aliases: | NoOverwrite |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-OutputDirectory
トランスクリプトを保存する特定のパスとフォルダーを指定します。 PowerShell によってトランスクリプト名が自動的に割り当てられます。
型: | String |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Path
トランスクリプト ファイルの場所を指定します。 .txt
ファイルへのパスを入力します。 ワイルドカードは使用できません。 パス内のディレクトリのいずれかが存在しない場合、コマンドは失敗します。
パスを指定しない場合、 Start-Transcript
は $Transcript
グローバル変数の値のパスを使用します。 この変数を作成していない場合、 Start-Transcript
はトランスクリプトを既定の場所とファイル名に格納します。
型: | String |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UseMinimalHeader
既定で含まれる詳細ヘッダーではなく、トランスクリプトの先頭に短いヘッダーを追加します。 このパラメーターは PowerShell 6.2 で追加されました。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
このコマンドレットは、確認メッセージと出力ファイルへのパスを含む文字列を返します。
メモ
トランスクリプトを停止するには、 Stop-Transcript
コマンドレットを使用します。
セッション全体を記録するには、 Start-Transcript
コマンドをプロファイルに追加します。 詳細については、「about_Profiles」を参照してください。
関連リンク
PowerShell