Aracılığıyla paylaş


about_PSConsoleHostReadLine

Kısa açıklama

PowerShell'in konsol isteminde girişi okuma biçimini özelleştirmeyi açıklar.

Uzun açıklama

Windows PowerShell 3.0'dan başlayarak, konsol girişinin işlendiği varsayılan yöntemi geçersiz kılan PSConsoleHostReadLine adlı bir işlev yazabilirsiniz.

Bu işlev, PSReadLine modülü tarafından genişletilir.

Örnekler

Aşağıdaki örnek Not Defteri'ni başlatır ve kullanıcının oluşturduğu bir metin dosyasından giriş alır:

function PSConsoleHostReadLine {
  $inputFile = Join-Path $Env:TEMP PSConsoleHostReadLine
  Set-Content $inputFile "PS > "

  # Notepad opens. Enter your command in it, save the file, and then exit.
  notepad $inputFile | Out-Null
  $userInput = Get-Content $inputFile
  $resultingCommand = $userInput.Replace("PS >", "")
  $resultingCommand
}

Açıklamalar

Varsayılan olarak, PowerShell, Windows konsolu alt sisteminin tüm tuş basımlarını, F7 menülerini ve diğer girişleri işlediği "Cooked mod" adı verilen bir modda konsoldan girdi okur. Enter veya Sekmebastığınızda, PowerShell o noktaya kadar yazdığınız metni alır. Enter veya Sekmetuşuna basmadan önce CtrlR, CtrlA, CtrlEtuşuna veya başka herhangi bir tuşa bastığınızı bilmesinin hiçbir yolu yoktur. Windows PowerShell 3.0'da işlevi bu sorunu çözer. PowerShell konsol ana bilgisayarında PSConsoleHostReadline adlı bir işlev tanımladığınızda, PowerShell "Pişmiş Mod" giriş mekanizması yerine bu işlevi çağırır.

Ayrıca bkz: