$inputYN = Read-Host "(defaults to y in 10 sec) [y/n] ";
사용자가 10 초 내에 입력하지 않으면 기본값 $inputYN
은 "예"로 이동하고 다음 작업으로 이동해야합니다.Powershell - 10 초 동안 입력 대기
$inputYN = Read-Host "(defaults to y in 10 sec) [y/n] ";
사용자가 10 초 내에 입력하지 않으면 기본값 $inputYN
은 "예"로 이동하고 다음 작업으로 이동해야합니다.Powershell - 10 초 동안 입력 대기
귀하의 질문에 흥미가 있습니다. 이 방법이 얼마나 효과가 있을지 잘 모르겠지만 몇 번 테스트하고 올바른 키를 다시 얻었습니다. 대문자를 입력하려고하면 너무 잘 작동하지 않습니다. 이보다 더 좋은 방법이 있어야합니다. PowerShell.com 또는 PowerShell.org과 같은 다른 포럼을 통해 다른 사람을 구할 수 있습니다. 대답의
function Get-Answer {
$counter = 0
while($counter++ -lt 100){
if($Host.UI.RawUI.KeyAvailable){
#You could check to see if it was the "Shift Key or another"
$key = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp")
break
}
else{
Start-Sleep -Milliseconds 100
$key = $false
}
}
return ($key)
}
Write-Host 'Enter y/n'
$answers = Get-Answer
if($answers -eq $false -or ($answers.Character -eq 'y')){
"Yes is default"
}
elseif($answers.Character -eq 'n'){
"NO!!!!"
}
else{
"Invalid Key $($answers.Character): `"YES`" is being used now."
}
감사합니다, 잘 작동합니다. – Krish
답변으로 표시하십시오. 고맙습니다. –
부분은 여기에 있습니다 : http://stackoverflow.com/questions/150161/waiting-for-user-input-with-a-timeout –
나는 파워 쉘에 새로운 오전이 작업을 수행하려고합니다. 이 작업에 대한 코드가 있으면 게시하십시오. 미리 감사드립니다. – Krish