$NestedPromptLevelを増やしつつPowerShellを実行する

なんかあったら危ないからPowerShell上でPowerShell動かすとかよく、ある
うっかりするとPowerShellごとクラッシュするとかね、そういうケース
なんですけどね、普通にpowershellってすると$NestedPromptLevelが増えないから元のシェルだか新しいシェルだかわかんなくなるのよね…

function New-PowerShell {
    powershell -NoExit -Command "`$NestedPromptLevel = $($NestedPromptLevel + 1)"
}

そこで、こうだ
うちの環境なら

PS>

だったのが

PS>>

になる
デフォルトのprompt()でも$NestedPromptLevelの数でなんか表示変えてるはずなので、効果あると思うの

これでexitしすぎて元のシェルまで終了させることもなくなるぞ、多分な!

本来$NestedPromptLevel$Host.EnterNestedPrompt()すると増えるんだけど
この状態だと前述のクラッシュだとかには全く無力なのであった

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中