2017-04-22 57 views
3

這個問題在精神上與Powershell command prompt prints ^C when pressing Ctrl+C, why?有關 - 它們都與處理PowerShell控制檯有關。一個簡單的PowerShell腳本,使PS控制檯變得很糟糕

考慮:

  • 的Windows 10或8或8.1
  • PowerShell控制檯

請看下面的代碼:

$iisexpress = "C:\Program Files (x86)\IIS Express\iisexpress.exe" 
$config = "c:\xyz\.vs\config\applicationhost.config" 
$logFile = "$env:temp\1.log" 
$id = (Start-Process $iisexpress "/site:Site1","/config:$config" -PassThru -RedirectStandardOutput $logFile -NoNewWindow).Id 
$id 

我不認爲有一個解決方案的具體配置這裏很重要。重要的是,我在啓動站點的同時重定向輸出並收集流程標識。

就是這樣。嘗試使用控制檯一點。如果沒有任何反應 - 再次運行腳本,即使它不是必需的。控制檯是拙劣的。

爲什麼?我如何解決它?

+1

更換-NoNewWindow有這個現在已經發生了一段時間,也可能它已經出臺由本月的更新?任何關於它發生的情況的想法? –

+0

如果每個人都輕描淡寫地說,那些經常使用它的人中會有很多噪音......所以我猜測它更像是你的環境。可能是您的個人資料中的某些內容或您運行的腳本?通常會導致什麼?它也發生在ISE嗎? –

+0

我做了進一步的調查,並改變了問題以反映調查結果。 – mark

回答

6

我相信這是造成你麻煩的-NoNewWindow標誌。 iisexpress.exe使用此開關在Powershell窗口內運行,似乎部分劫持您的輸入。

我還是好奇地研究爲什麼發生這種情況,沒有答案的還沒有,但一個簡單的辦法是用-WindowStyle hidden

相關問題