目次
$PSCommandPathを利用する
PowerShell v3以降向け。
$PSCommandPath
という自動変数
にスクリプトファイル(.ps1)のパスが格納されているようです。
これを\
で分割して最後の要素を取得すれば実行中のスクリプトのファイル名が取得できます。
# スクリプトファイル(.ps1)のパス $scriptName1 = Split-Path -Leaf $PSCommandPath Write-Host $scriptName1
参考
$Script:MyInvocation.MyCommandを利用する
PowerShell v2以前向け。
$Script:MyInvocation.MyCommand.Path
にはスクリプトファイルのフルパスが、
$Script:MyInvocation.MyCommand.Name
にはスクリプトファイル名が格納されているようですので、
以下のようにすればファイル名が取得できます。
# スクリプトファイル(.ps1)のパス $scriptName2 = Split-Path -Leaf $Script:MyInvocation.MyCommand.Path Write-Host $scriptName2 # スクリプトファイル名 $scriptName3 = $Script:MyInvocation.MyCommand.Name Write-Host $scriptName3