Think Twice
IT技術メモ | PowerShellのメモ
Created: 2020-09-18 / Updated: 2021-07-25

PowerShellで実行中のスクリプトのファイル名を取得する


目次


$PSCommandPathを利用する

PowerShell v3以降向け。
$PSCommandPathという自動変数にスクリプトファイル(.ps1)のパスが格納されているようです。
これを\で分割して最後の要素を取得すれば実行中のスクリプトのファイル名が取得できます。

Copy
# スクリプトファイル(.ps1)のパス
$scriptName1 = Split-Path -Leaf $PSCommandPath
Write-Host $scriptName1

参考

$Script:MyInvocation.MyCommandを利用する

PowerShell v2以前向け。
$Script:MyInvocation.MyCommand.Pathにはスクリプトファイルのフルパスが、
$Script:MyInvocation.MyCommand.Nameにはスクリプトファイル名が格納されているようですので、
以下のようにすればファイル名が取得できます。

Copy
# スクリプトファイル(.ps1)のパス
$scriptName2 = Split-Path -Leaf $Script:MyInvocation.MyCommand.Path
Write-Host $scriptName2

# スクリプトファイル名
$scriptName3 = $Script:MyInvocation.MyCommand.Name
Write-Host $scriptName3

参考


参考

参考サイト

ソース

関連メモ