2009-08-05 92 views

回答

8

你可以看看$Host變量。名稱將在控制檯中爲「ConsoleHost」,ISE中爲「Windows Powershell ISE主機」。雖然這可能有點片面測試,因爲你依賴於用戶可讀的字符串。

另一種方法可能是看看$Host.UI.RawUI.BufferSize.Height這似乎在ISE中始終爲0。控制檯窗口不常見的東西。

3

$ shellid也是,但是更好的選擇是爲每個主機使用單獨的配置文件: Microsoft.PowerShell_Profile.ps1和Microsoft.PowerShellISE_Profile.ps1。相應的文件將針對特定主機運行。要在所有主機上運行某些東西,至少在這裏使用通用配置文件Profile.ps1

+0

'$ ShellId'在控制檯和ISE中都會生成「Microsoft.Powershell」。 – Joey 2009-08-05 23:05:59

+0

嗯,我習慣於處理sql 2008這是SQL 2008主機。這些主機之間的shellid是不同的使用單獨的配置文件仍然是一個可能的解決方案。 – 2009-08-06 02:27:38