Powershell 스크립트는 ctrl-c를 눌러 사용자가 쉽게 종료 할 수 있습니다. Powershell 스크립트가 ctrl-c를 잡고 스크립트를 실제로 종료할지 여부를 묻는 방법이 있습니까?ctrl-c를 잡고 사용자에게 확인하도록 요청하는 방법이 있습니까?
5
A
답변
2
체크 아웃 this post on the MSDN forums. 당신이 확인을위한 GUI의 메시지 박스를 사용하지 않을 경우
[console]::TreatControlCAsInput = $true
while ($true)
{
write-host "Processing..."
if ([console]::KeyAvailable)
{
$key = [system.console]::readkey($true)
if (($key.modifiers -band [consolemodifiers]"control") -and ($key.key -eq "C"))
{
Add-Type -AssemblyName System.Windows.Forms
if ([System.Windows.Forms.MessageBox]::Show("Are you sure you want to exit?", "Exit Script?", [System.Windows.Forms.MessageBoxButtons]::YesNo) -eq "Yes")
{
"Terminating..."
break
}
}
}
}
, 당신은 대신 읽기 호스트를 사용하거나 수 Host.UI.RawUI.ReadKey은 다윗이 그의 대답에 보여 주었다()로 $.
2
while ($true)
{
Write-Host "Do this, do that..."
if ($Host.UI.RawUI.KeyAvailable -and (3 -eq [int]$Host.UI.RawUI.ReadKey("AllowCtrlC,IncludeKeyUp,NoEcho").Character))
{
Write-Host "You pressed CTRL-C. Do you want to continue doing this and that?"
$key = $Host.UI.RawUI.ReadKey("NoEcho, IncludeKeyDown")
if ($key.Character -eq "N") { break; }
}
}
+0
그래서 내 모든 코드를이 코드로 묶어야합니까? –
+0
$ host.ui.rawui.readkey()를 사용하는 다른 코드를 방해하지 않습니까? –
관련 문제
- 1. WinRT에는 하드웨어 제조업체/모델을 요청하는 방법이 있습니까?
- 2. 브라우저에서 사용자에게 정보를 요청하는 입력 창이 표시 될 수 있습니까?
- 3. 사용자에게 뉴스 피드에 게시 권한을 요청하는 방법?
- 4. WebView 콘텐츠가 사용자에게 표시되는지 확인하는 방법이 있습니까?
- 5. 사용자에게 URL을 숨기는 좋은 방법이 있습니까?
- 6. 사용자에게 android에서 입력 방법을 묻는 방법이 있습니까?
- 7. 컨트롤이 자신을 확인하도록 강제하는 방법?
- 8. Hudson에게 빌드 중에 SCM 폴링을 건너 뛰도록 요청하는 방법이 있습니까?
- 9. Lightbox에서 JavaScript SDK를 사용하여 권한을 요청하는 방법이 있습니까? FBML 애플리케이션에서
- 10. Apple이 사용자에게 신용 카드 번호를 입력하도록 요청하는 앱을 승인합니까?
- 11. 사용자에게 장치 사용 권한을 요청하는 브라우저를 어떻게 검색합니까?
- 12. 특정 앱에 대한 액세스 토큰을 사용자에게 요청하는 방법은 무엇입니까?
- 13. JComboBox 스크롤을 잡고 끌기
- 14. 정적으로 쉽게 확인하도록 설계된 언어
- 15. 비동기 적으로 사용자에게 조치를 수행하도록 요청하는 가장 좋은 방법은 무엇입니까?
- 16. Facebook C# SDK 5.1.1 - 사용자에게 권한을 요청하는 방법?
- 17. 사용자에게 자체 호스팅 리소스를 요청하도록 요청하는 것이 적절합니까?
- 18. C++ 벡터 잡고 포인터
- 19. ___/__/__ 같은 사용자에게 입력 텍스트의 형식을 표시하는 방법이 있습니까?
- 20. Zend에서는 사용자에게 hasIdentity()가 있는지 확인하는 더 좋은 방법이 있습니까?
- 21. 모든 예외를 포착하여 iOS에서 사용자에게 표시하는 방법이 있습니까?
- 22. 사용자에게 현재 플래시 설정 (카메라 용)을 설정하는 방법이 있습니까?
- 23. WebView가 이미지를로드 할 때까지 대기하도록 사용자에게 알릴 방법이 있습니까?
- 24. 링크가 사이트 외부로 이동하지 않는다고 사용자에게 표시하는 현재의 방법이 있습니까?
- 25. 내 웹 사이트에서 사용자에게 페이스 북 세부 정보 사용 권한을 요청하는 것을 어떻게 중지시킬 수 있습니까?
- 26. ToMethod를 사용할 때 null을 확인하도록 Ninject를 구성하십시오.
- 27. Visual Studio에서 컴파일시 .ASPX 페이지를 확인하도록 강요
- 28. C++ 컴파일러가 예외 처리를 확인하도록 강요합니다.
- 29. 사이트에서 요청하는 쿠키 확인
- 30. AJAX 대신 이미지를 요청하는 데이 방법이 얼마나 좋습니까?
나는 그 반대의 방법을 찾고 있습니다. Powershell은 항상 해지를 확인해달라고 요청합니다. –
어떻게 그렇게 했습니까? –
Windows 7을 설치했을 때의 상태였습니다. 나를 미치게 해! –