Condividi tramite


about_PSReadLine_Functions

Breve descrizione

PSReadLine offre un'esperienza di modifica della riga di comando migliorata nella console di PowerShell.

Descrizione lunga

PowerShell 7.3 viene fornito con PSReadLine 2.2.6. La versione corrente è PSReadLine 2.3.4. La versione corrente di PSReadLine può essere installata e usata in Windows PowerShell 5.1 e versioni successive. Per alcune funzionalità, è necessario eseguire PowerShell 7.2 o versione successiva.

Questo articolo illustra le funzioni fornite da PSReadLine 2.3.4. Queste funzioni possono essere associate a sequenze di tasti per facilitare l'accesso e la chiamata.

Uso della classe Microsoft.PowerShell.PSConsoleReadLine

Le funzioni seguenti sono disponibili nella classe Microsoft.PowerShell.PSConsoleReadLine.

Funzioni di modifica di base

Interrompi

Interrompere l'azione corrente, ad esempio: ricerca cronologia incrementale.

  • Modalità Emacs: Ctrl+g
  • Modalità di inserimento vi: Ctrl+g
  • Modalità di comando vi: <Ctrl+g>

AcceptAndGetNext

Tentare di eseguire l'input corrente. Se può essere eseguito (ad esempio AcceptLine), richiamare l'elemento successivo dalla cronologia alla successiva chiamata a ReadLine.

  • Modalità Emacs: Ctrl+o

AcceptLine

Tentare di eseguire l'input corrente. Se l'input corrente è incompleto ,ad esempio c'è una parentesi chiusa mancante, parentesi quadre o virgolette, il prompt di continuazione viene visualizzato nella riga successiva e PSReadLine attende che le chiavi modifichino l'input corrente.

  • Modalità Windows: Enter
  • Modalità Emacs: Enter
  • Modalità di inserimento vi: Enter

AddLine

Il prompt di continuazione viene visualizzato nella riga successiva e PSReadLine attende che le chiavi modifichino l'input corrente. Ciò è utile per immettere l'input su più righe come singolo comando anche quando una singola riga è completa di input da sola.

  • Modalità Windows: Shift+Enter
  • Modalità Emacs: Shift+Enter
  • Modalità di inserimento vi: Shift+Enter
  • Modalità di comando vi: <Shift+Enter>

BackwardDeleteChar

Eliminare il carattere prima del cursore.

  • Modalità Windows: Backspace, Ctrl+h
  • Modalità Emacs: Backspace, Ctrl+Backspace, Ctrl+h
  • Modalità di inserimento vi: Backspace
  • Modalità di comando vi: <X>, <d,h>

BackwardDeleteInput

Come BackwardKillInput: elimina il testo dal punto all'inizio dell'input, ma non inserisce il testo eliminato nell'anello di terminazioni.

  • Modalità Windows: Ctrl+Home
  • Modalità di inserimento vi: Ctrl+u, Ctrl+Home
  • Modalità di comando vi: <Ctrl+u>, <Ctrl+Home>

BackwardDeleteLine

Come BackwardKillLine: elimina il testo dal punto all'inizio della riga, ma non inserisce il testo eliminato nell'anello di terminazioni.

  • Modalità di comando vi: <d,0>

BackwardDeleteWord

Elimina la parola precedente.

  • Modalità di comando vi: <Ctrl+w>, <d,b>

BackwardKillInput

Cancellare il testo dall'inizio dell'input al cursore. Il testo cancellato viene inserito nel kill-ring.

  • Modalità Emacs: Ctrl+u, Ctrl+x,Backspace

BackwardKillLine

Cancellare il testo dall'inizio della riga logica corrente al cursore. Il testo cancellato viene inserito nel kill-ring.

  • La funzione non è associato.

BackwardKillWord

Cancellare l'input dall'inizio della parola corrente al cursore. Se il cursore è compreso tra le parole, l'input viene cancellato dall'inizio della parola precedente al cursore. Il testo cancellato viene inserito nel kill-ring.

  • Modalità Windows: Ctrl+Backspace, Ctrl+w
  • Modalità Emacs: Alt+Backspace, Escape,Backspace
  • Modalità di inserimento vi: Ctrl+Backspace
  • Modalità di comando vi: <Ctrl+Backspace>

BackwardReplaceChar

Sostituisce il carattere davanti al cursore.

  • Modalità di comando vi: <c,h>

CancelLine

Annullare l'input corrente, lasciando l'input sullo schermo, ma torna all'host in modo che la richiesta venga valutata di nuovo.

  • Modalità di inserimento vi: Ctrl+c
  • Modalità di comando vi: <Ctrl+c>

MaiuscolaWord

Aggiunta in PSReadLine 2.3.0

Convertire il primo carattere della parola successiva in maiuscolo e i caratteri rimanenti in lettere minuscole.

  • Modalità Emacs: Alt+c, Escape,c

Copia

Copiare l'area selezionata negli Appunti di sistema. Se non è selezionata alcuna area, copiare l'intera riga.

  • Modalità Windows: Ctrl+C

CopyOrCancelLine

Se il testo è selezionato, copiare negli Appunti; in caso contrario, annullare la riga.

  • Modalità Windows: Ctrl+c
  • Modalità Emacs: Ctrl+c

Taglia

Elimina l'area selezionata inserendo testo eliminato negli Appunti di sistema.

  • Modalità Windows: Ctrl+x

DeleteChar

Eliminare il carattere sotto il cursore.

  • Modalità Windows: Delete
  • Modalità Emacs: Delete
  • Modalità di inserimento vi: Delete
  • Modalità di comando vi: <Delete>, <x>, <d,l>, <d,Spacebar>

DeleteCharOrExit

Eliminare il carattere sotto il cursore oppure se la riga è vuota, uscire dal processo.

  • Modalità Emacs: Ctrl+d

DeleteEndOfBuffer

Elimina fino alla fine del buffer su più righe.

  • Modalità di comando vi: <d,G>

DeleteEndOfWord

Elimina alla fine della parola.

  • Modalità di comando vi: <d,e>

DeleteLine

Elimina la riga logica corrente di un buffer su più righe, abilitando l'annullamento.

  • Modalità di comando vi: <d,d>, <d,_>

DeleteLineToFirstChar

Elimina dal primo carattere non vuoto della riga logica corrente in un buffer su più righe.

  • Modalità di comando vi: <d,^>

DeleteNextLines

Elimina le righe logiche correnti e successive n in un buffer su più righe.

  • Modalità di comando vi: <d,j>

DeletePreviousLines

Elimina le righe logiche richieste precedenti e la riga logica corrente in un buffer su più righe.

  • Modalità di comando vi: <d,k>

DeleteRelativeLines

Elimina dall'inizio del buffer alla riga logica corrente in un buffer su più righe.

Come la maggior parte dei comandi Vi, il <d,g,g> comando può essere anteporto a un argomento numerico che specifica un numero di riga assoluto, che, insieme al numero di riga corrente, costituisce un intervallo di righe da eliminare. Se non specificato, per impostazione predefinita l'argomento numerico è 1, che fa riferimento alla prima riga logica in un buffer su più righe.

Il numero effettivo di righe da eliminare dalla multilinea viene calcolato come differenza tra il numero di riga logico corrente e l'argomento numerico specificato, che può quindi essere negativo. Di conseguenza, la parte relativa del nome del metodo.

  • Modalità di comando vi: <d,g,g>

DeleteToEnd

Elimina alla fine della riga.

  • Modalità di comando vi: <D>, <d,$>

DeleteWord

Eliminare la parola successiva.

  • Modalità di comando vi: <d,w>

DowncaseWord

Aggiunta in PSReadLine 2.3.0

Convertire la parola successiva in lettere minuscole.

  • Modalità Emacs: Alt+l, Escape,l

ForwardDeleteInput

Come KillLine: elimina il testo dal punto alla fine dell'input, ma non inserisce il testo eliminato nell'anello kill.Like KillLine - deletes text from the point to the end of the input, but't put the deleted text in the kill-ring.

  • Modalità Windows: Ctrl+End
  • Modalità di inserimento vi: Ctrl+End
  • Modalità di comando vi: <Ctrl+End>

ForwardDeleteLine

Elimina il testo dal punto alla fine della riga logica corrente, ma non inserisce il testo eliminato nell'anello di terminazioni.

  • La funzione non è associato

InsertLineAbove

Viene creata una nuova riga vuota sopra la riga corrente, indipendentemente dalla posizione in cui si trova il cursore sulla riga corrente. Il cursore si sposta all'inizio della nuova riga.

  • Modalità Windows: Ctrl+Enter

InsertLineBelow

Sotto la riga corrente viene creata una nuova riga vuota indipendentemente dalla posizione in cui si trova il cursore nella riga corrente. Il cursore si sposta all'inizio della nuova riga.

  • Modalità Windows: Shift+Ctrl+Enter

InvertCase

Inverti la maiuscola del carattere corrente e passa alla successiva.

  • Modalità di comando vi: <~>

KillLine

Cancellare l'input dal cursore alla fine dell'input. Il testo cancellato viene inserito nel kill-ring.

  • Modalità Emacs: Ctrl+k

KillRegion

Terminare il testo tra il cursore e il segno.

  • La funzione non è associato.

KillWord

Cancellare l'input dal cursore alla fine della parola corrente. Se il cursore è compreso tra le parole, l'input viene cancellato dal cursore alla fine della parola successiva. Il testo cancellato viene inserito nel kill-ring.

  • Modalità Windows: Alt+d, Ctrl+Delete
  • Modalità Emacs: Alt+d, Escape,d
  • Modalità di inserimento vi: Ctrl+Delete
  • Modalità di comando vi: <Ctrl+Delete>

Incolla

Incollare testo dagli Appunti di sistema.

  • Modalità Windows: Ctrl+v, Shift+Insert
  • Modalità di inserimento vi: Ctrl+v
  • Modalità di comando vi: <Ctrl+v>

Importante

Quando si usa la funzione Paste , l'intero contenuto del buffer degli Appunti viene incollato nel buffer di input di PSReadLine. Il buffer di input viene quindi passato al parser di PowerShell. L'input incollato usando il metodo incollato con il pulsante destro del mouse dell'applicazione console viene copiato nel buffer di input un carattere alla volta. Il buffer di input viene passato al parser quando viene copiato un carattere di nuova riga. Di conseguenza, l'input viene analizzato una riga alla volta. La differenza tra i metodi Paste comporta un comportamento di esecuzione diverso.

PasteAfter

Incollare gli Appunti dopo il cursore, spostando il cursore alla fine del testo incollato.

  • Modalità di comando vi: <p>

PasteBefore

Incollare gli Appunti prima del cursore, spostando il cursore alla fine del testo incollato.

  • Modalità di comando vi: <P>

PrependAndAccept

Anteporre un '#' e accettare la riga.

  • Modalità di comando vi: <#>

Ripeti

Annullare un'annullamento.

  • Modalità Windows: Ctrl+y
  • Modalità di inserimento vi: Ctrl+y
  • Modalità di comando vi: <Ctrl+y>

RepeatLastCommand

Ripetere l'ultima modifica del testo.

  • Modalità di comando vi: <.>

ReplaceChar

Sostituire il carattere corrente con il set di caratteri successivo digitato.

  • Modalità di comando vi: <c,l>, <c,Spacebar>

ReplaceCharInPlace

Sostituire il carattere corrente con un solo carattere.

  • Modalità di comando vi: <r>

RevertLine

Ripristina tutto l'input all'input corrente.

  • Modalità Windows: Escape
  • Modalità Emacs: Alt+r, Escape,r

ShellBackwardKillWord

Cancellare l'input dall'inizio della parola corrente al cursore. Se il cursore è compreso tra le parole, l'input viene cancellato dall'inizio della parola precedente al cursore. Il testo cancellato viene inserito nel kill-ring.

La funzione non è associato.

ShellKillWord

Cancellare l'input dal cursore alla fine della parola corrente. Se il cursore è compreso tra le parole, l'input viene cancellato dal cursore alla fine della parola successiva. Il testo cancellato viene inserito nel kill-ring.

La funzione non è associato.

SwapCharacters

Scambia il carattere corrente e quello prima.

  • Modalità Emacs: Ctrl+t
  • Modalità di inserimento vi: Ctrl+t
  • Modalità di comando vi: <Ctrl+t>

Annulla

Annullare una modifica precedente.

  • Modalità Windows: Ctrl+z
  • Modalità Emacs: Ctrl+_, Ctrl+x,Ctrl+u
  • Modalità di inserimento vi: Ctrl+z
  • Modalità di comando vi: <Ctrl+z>, <u>

AnnullaTutti

Annulla tutte le modifiche precedenti per la riga.

  • Modalità di comando vi: <U>

UnixWordRubout

Cancellare l'input dall'inizio della parola corrente al cursore. Se il cursore è compreso tra le parole, l'input viene cancellato dall'inizio della parola precedente al cursore. Il testo cancellato viene inserito nel kill-ring.

  • Modalità Emacs: Ctrl+w

UpcaseWord

Aggiunta in PSReadLine 2.3.0

Convertire la parola successiva in lettere maiuscole.

  • Modalità Emacs: Alt+u, Escape,u

ValidateAndAcceptLine

Tentare di eseguire l'input corrente. Se l'input corrente è incompleto ,ad esempio c'è una parentesi chiusa mancante, parentesi quadre o virgolette, il prompt di continuazione viene visualizzato nella riga successiva e PSReadLine attende che le chiavi modifichino l'input corrente.

  • Modalità Emacs: Ctrl+m

ViAcceptLine

Accettare la riga e passare alla modalità Inserisci.

  • Modalità di comando vi: <Enter>

ViAcceptLineOrExit

Come DeleteCharOrExit in modalità Emacs, ma accetta la riga anziché eliminare un carattere.

  • Modalità di inserimento vi: Ctrl+d
  • Modalità di comando vi: <Ctrl+d>

ViAppendLine

Sotto la riga corrente viene inserita una nuova riga.

  • Modalità di comando vi: <o>

ViBackwardDeleteGlob

Elimina la parola precedente, utilizzando solo spazi vuoti come delimitatore di parola.

  • Modalità di comando vi: <d,B>

ViBackwardGlob

Sposta di nuovo il cursore all'inizio della parola precedente, utilizzando solo spazi vuoti come delimitatori.

  • Modalità di comando vi: <B>

ViBackwardReplaceGlob

Eliminare all'indietro all'inizio della parola precedente, come delimitato da spazi vuoti, e immettere la modalità di inserimento.

  • Modalità di comando vi: <c,B>

ViBackwardReplaceLine

Sostituisce la riga sinistra del cursore e fino all'inizio.

  • Modalità di comando vi: <c,0>

ViBackwardReplaceLineToFirstChar

Sostituisce la riga sinistra del cursore e un carattere all'inizio della riga.

  • Modalità di comando vi: <c,^>

ViBackwardReplaceWord

Sostituire la parola precedente.

  • Modalità di comando vi: <c,B>

ViDeleteBrace

Trovare la parentesi graffa corrispondente, parentesi quadre o parentesi quadre ed eliminare tutto il contenuto all'interno, inclusa la parentesi graffa.

  • Modalità di comando vi: <d,%>

ViDeleteEndOfGlob

Elimina alla fine della parola.

  • Modalità di comando vi: <d,E>

ViDeleteGlob

Eliminare il glob successivo (parola delimitata da spazi vuoti).

  • Modalità di comando vi: <d,W>

ViDeleteToBeforeChar

Elimina fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <d,t>

ViDeleteToBeforeCharBackward

Elimina fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <d,T>

ViDeleteToChar

Elimina fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <d,f>

ViDeleteToCharBackward

Elimina all'indietro fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <d,F>

ViInsertAtBegining

Passare alla modalità Inserisci e posizionare il cursore all'inizio della riga.

  • Modalità di comando vi: <I>

ViInsertAtEnd

Passare alla modalità Inserisci e posizionare il cursore alla fine della riga.

  • Modalità di comando vi: <A>

ViInsertLine

Una nuova riga viene inserita sopra la riga corrente.

  • Modalità di comando vi: <O>

ViInsertWithAppend

Accodamento dalla posizione della riga corrente.

  • Modalità di comando vi: <a>

ViInsertWithDelete

Eliminare il carattere corrente e passare alla modalità Inserisci.

  • Modalità di comando vi: <s>

ViJoinLines

Unisce la riga corrente e la riga successiva.

  • Modalità di comando vi: <J>

ViReplaceBrace

Sostituire tutti i caratteri tra il carattere parentesi graffa corrente e il partner corrispondente.

  • Modalità di comando vi: <c,%>

ViReplaceEndOfGlob

Eliminare fino alla fine della parola, come delimitato da spazi vuoti e immettere la modalità di inserimento.

  • Modalità di comando vi: <c,E>

ViReplaceEndOfWord

Eliminare fino alla fine della parola, come delimitato da spazi vuoti e delimitatori comuni e immettere la modalità di inserimento.

  • Modalità di comando vi: <c,E>

ViReplaceGlob

Eliminare all'inizio della parola successiva, come delimitato da spazi vuoti, e immettere la modalità di inserimento.

  • Modalità di comando vi: <c,W>

ViReplaceLine

Cancellare l'intera riga di comando.

  • Modalità di comando vi: <S>, <c,c>

ViReplaceToBeforeChar

Sostituisce fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <c,t>

ViReplaceToBeforeCharBackward

Sostituisce fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <c,T>

ViReplaceToChar

Elimina fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <c,f>

ViReplaceToCharBackward

Sostituisce fino a quando non viene specificato il carattere.

  • Modalità di comando vi: <c,F>

ViReplaceToEnd

Sostituire i caratteri dalla posizione del cursore alla fine della riga.

  • Modalità di comando vi: <c,$>, <C>

ViReplaceUntilEsc

Sostituire il carattere corrente finché non viene immesso un carattere di escape o la riga viene accettata.

  • Modalità di comando vi: <r>

ViReplaceWord

Sostituire la parola corrente.

  • Modalità di comando vi: <c,W>

ViYankBeginningOfLine

Yank dall'inizio del buffer al cursore.

  • Modalità di comando vi: <y,0>

ViYankEndOfGlob

Yank dal cursore alla fine delle PAROLE.

  • Modalità di comando vi: <y,E>

ViYankEndOfWord

Yank dal cursore alla fine delle parole.

  • Modalità di comando vi: <y,e>

ViYankLeft

Caratteri Yank a sinistra del cursore.

  • Modalità di comando vi: <y,h>

ViYankLine

Yank l'intero buffer.

  • Modalità di comando vi: <y,y>

ViYankNextGlob

Yank dal cursore all'inizio delle parole successive.

  • Modalità di comando vi: <y,W>

ViYankNextWord

Yank le parole dopo il cursore.

  • Modalità di comando vi: <y,w>

ViYankPercent

Yank da/verso parentesi graffe corrispondenti.

  • Modalità di comando vi: <y,%>

ViYankPreviousGlob

Yank dall'inizio delle parole al cursore.

  • Modalità di comando vi: <y,B>

ViYankPreviousWord

Yank le parole prima del cursore.

  • Modalità di comando vi: <y,b>

ViYankRight

Caratteri Yank sotto e a destra del cursore.

  • Modalità di comando vi: <y,l>, <y,Spacebar>

ViYankToEndOfLine

Yank dal cursore alla fine del buffer.

  • Modalità di comando vi: <y,$>

ViYankToFirstChar

Yank dal primo carattere non vuoto al cursore.

  • Modalità di comando vi: <y,^>

Strattone

Aggiungere il testo terminato più di recente all'input.

  • Modalità Emacs: Ctrl+y

YankLastArg

Yank l'ultimo argomento della riga di storia precedente. Con un argomento, la prima volta che viene richiamato, si comporta esattamente come YankNthArg. Se richiamato più volte, invece scorre la cronologia e arg imposta la direzione (negativo inverte la direzione).

  • Modalità Windows: Alt+.
  • Modalità Emacs: Alt+., Alt+_, Escape,., Escape,_

YankNthArg

Yank il primo argomento (dopo il comando) dalla riga di cronologia precedente. Con un argomento, creare il n° argomento (a partire da 0), se l'argomento è negativo, iniziare dall'ultimo argomento.

  • Modalità Emacs: Ctrl+Alt+y, Escape,Ctrl+y

YankPop

Se l'operazione precedente era Yank o YankPop, sostituire il testo precedentemente yanked con il successivo testo ucciso dal kill-ring.

  • Modalità Emacs: Alt+y, Escape,y

Funzioni di completamento

Completo

Tentare di eseguire il completamento del testo che circonda il cursore. Se sono presenti più completamenti possibili, per il completamento viene usato il prefisso non ambiguo più lungo. Se si tenta di completare il completamento non ambiguo più lungo, viene visualizzato un elenco di possibili completamenti.

  • Modalità Emacs: Tab

Tentare di eseguire il completamento del testo che circonda il cursore. Se sono presenti più completamenti possibili, per il completamento viene usato il prefisso non ambiguo più lungo. Se si tenta di completare il completamento non ambiguo più lungo, viene visualizzato un elenco di possibili completamenti.

  • Modalità Windows: Ctrl+@, Ctrl+Spacebar
  • Modalità Emacs: Ctrl+Spacebar

PossibleCompletions

Visualizzare l'elenco dei possibili completamenti.

  • Modalità Emacs: Alt+=
  • Modalità di inserimento vi: Ctrl+Spacebar
  • Modalità di comando vi: <Ctrl+Spacebar>

TabCompleteNext

Tentare di completare il testo che circonda il cursore con il completamento successivo disponibile.

  • Modalità Windows: Tab
  • Modalità di comando vi: <Tab>

TabCompletePrevious

Tentare di completare il testo che circonda il cursore con il completamento disponibile precedente.

  • Modalità Windows: Shift+Tab
  • Modalità di comando vi: <Shift+Tab>

ViTabCompleteNext

Termina il gruppo di modifica corrente, se necessario, e richiama TabCompleteNext.

  • Modalità di inserimento vi: Tab

ViTabCompletePrevious

Termina il gruppo di modifica corrente, se necessario, e richiama TabCompletePrevious.

  • Modalità di inserimento vi: Shift+Tab

Funzioni di spostamento del cursore

BackwardChar

Spostare il cursore un carattere a sinistra. Questo può spostare il cursore sulla riga precedente di input su più righe.

  • Modalità Windows: LeftArrow
  • Modalità Emacs: LeftArrow, Ctrl+b

IndietroWord

Spostare di nuovo il cursore all'inizio della parola corrente o se tra parole, l'inizio della parola precedente. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità Windows: Ctrl+LeftArrow
  • Modalità Emacs: Alt+b, Escape,b
  • Modalità di inserimento vi: Ctrl+LeftArrow
  • Modalità di comando vi: <Ctrl+LeftArrow>

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

BeginningOfLine

Se l'input ha più righe, passare all'inizio della riga corrente o, se già all'inizio della riga, passare all'inizio dell'input. Se l'input ha una singola riga, passare all'inizio dell'input.

  • Modalità Windows: Home
  • Modalità Emacs: Home, Ctrl+a
  • Modalità di inserimento vi: Home
  • Modalità di comando vi: <Home>

EndOfLine

Se l'input ha più righe, spostarsi alla fine della riga corrente o, se già alla fine della riga, passare alla fine dell'input. Se l'input ha una singola riga, passare alla fine dell'input.

  • Modalità Windows: End
  • Modalità Emacs: End, Ctrl+e
  • Modalità di inserimento vi: End

ForwardChar

Spostare il cursore un carattere a destra. Questo può spostare il cursore alla riga successiva di input su più righe.

  • Modalità Windows: RightArrow
  • Modalità Emacs: RightArrow, Ctrl+f

ForwardWord

Spostare il cursore in avanti fino alla fine della parola corrente, o se tra parole, alla fine della parola successiva. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità Emacs: Alt+f, Escape,f

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

GotoBrace

Passare alla parentesi graffa, alla parentesi quadra o alla parentesi quadra corrispondente.

  • Modalità Windows: Ctrl+]
  • Modalità di inserimento vi: Ctrl+]
  • Modalità di comando vi: <Ctrl+]>

GotoColumn

Passare alla colonna indicata da arg.

  • Modalità di comando vi: <|>

GotoFirstNonBlankOfLine

Spostare il cursore sul primo carattere non vuoto nella riga.

  • Modalità di comando vi: <^>, <_>

MoveToEndOfLine

Spostare il cursore alla fine dell'input.

  • Modalità di comando vi: <End>, <$>

MoveToFirstLine

Passare alla prima riga in un comando su più righe.

  • Modalità di comando vi: <g,g>

MoveToLastLine

Passare all'ultima riga di un comando su più righe.

  • Modalità di comando vi: <G>

NextLine

Spostare il cursore alla riga successiva.

  • La funzione non è associato.

NextWord

Spostare il cursore in avanti fino all'inizio della parola successiva. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità Windows: Ctrl+RightArrow
  • Modalità di inserimento vi: Ctrl+RightArrow
  • Modalità di comando vi: <Ctrl+RightArrow>

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

NextWordEnd

Spostare il cursore in avanti fino alla fine della parola corrente, o se tra parole, alla fine della parola successiva. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità di comando vi: <e>

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

PreviousLine

Spostare il cursore sulla riga precedente.

  • La funzione non è associato.

ShellBackwardWord

Spostare di nuovo il cursore all'inizio della parola corrente o se tra parole, l'inizio della parola precedente. I limiti di Word sono definiti dai token di PowerShell.

  • La funzione non è associato.

ShellForwardWord

Spostare il cursore in avanti fino all'inizio della parola successiva. I limiti di Word sono definiti dai token di PowerShell.

  • La funzione non è associato.

ShellNextWord

Spostare il cursore in avanti fino alla fine della parola corrente, o se tra parole, alla fine della parola successiva. I limiti di Word sono definiti dai token di PowerShell.

  • La funzione non è associato.

ViBackwardChar

Spostare il cursore a sinistra nella modalità di modifica Vi. Questo può spostare il cursore sulla riga precedente di input su più righe.

  • Modalità di inserimento vi: LeftArrow
  • Modalità di comando vi: <LeftArrow>, <Backspace>, <h>

ViBackwardWord

Spostare di nuovo il cursore all'inizio della parola corrente o se tra parole, l'inizio della parola precedente. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità di comando vi: <b>

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

ViEndOfGlob

Spostare il cursore alla fine di questa parola, come delimitato da spazi vuoti.

  • Modalità di comando vi: <E>

ViEndOfPreviousGlob

Passa alla fine della parola precedente, utilizzando solo spazi vuoti come delimitatore di parole.

  • La funzione non è associato.

ViForwardChar

Spostare il cursore a destra nella modalità di modifica Vi. Questo può spostare il cursore alla riga successiva di input su più righe.

  • Modalità di inserimento vi: RightArrow
  • Modalità di comando vi: <RightArrow>, <Spacebar>, <l>

ViGotoBrace

Simile a GotoBrace, ma è basato su caratteri anziché basato su token.

  • Modalità di comando vi: <%>

ViNextGlob

Passa alla parola successiva, utilizzando solo spazi vuoti come delimitatore di parole.

  • Modalità di comando vi: <W>

ViNextWord

Spostare il cursore in avanti fino all'inizio della parola successiva. I limiti di Word sono definiti da un set configurabile di caratteri.

  • Modalità di comando vi: <w>

I caratteri che definiscono i limiti delle parole vengono configurati nella proprietà WordDelimiters dell'oggetto PSConsoleReadLineOptions . Per visualizzare o modificare la proprietà WordDelimiters , vedere Get-PSReadLineOption e Set-PSReadLineOption.

Funzioni cronologia

BeginningOfHistory

Passare al primo elemento della cronologia.

  • Modalità Emacs: Alt+<

ClearHistory

Cancella la cronologia in PSReadLine. Questo non influisce sulla cronologia di PowerShell.

  • Modalità Windows: Alt+F7

EndOfHistory

Passare all'ultimo elemento (l'input corrente) nella cronologia.

  • Modalità Emacs: Alt+>

ForwardSearchHistory

Eseguire una ricerca incrementale in avanti nella cronologia.

  • Modalità Windows: Ctrl+s
  • Modalità Emacs: Ctrl+s
  • Modalità di inserimento vi: Ctrl+s
  • Modalità di comando vi: <Ctrl+s>

HistorySearchBackward

Sostituire l'input corrente con l'elemento 'previous' della cronologia PSReadLine che corrisponde ai caratteri tra l'inizio e l'input e il cursore.

  • Modalità Windows: F8

HistorySearchForward

Sostituire l'input corrente con l'elemento 'next' della cronologia PSReadLine che corrisponde ai caratteri tra l'inizio e l'input e il cursore.

  • Modalità Windows: Shift+F8

NextHistory

Sostituire l'input corrente con l'elemento 'next' della cronologia di PSReadLine.

  • Modalità Windows: DownArrow
  • Modalità Emacs: DownArrow, Ctrl+n
  • Modalità di inserimento vi: DownArrow
  • Modalità di comando vi: <DownArrow>, <j>, <+>

PreviousHistory

Sostituire l'input corrente con l'elemento 'precedente' della cronologia di PSReadLine.

  • Modalità Windows: UpArrow
  • Modalità Emacs: UpArrow, Ctrl+p
  • Modalità di inserimento vi: UpArrow
  • Modalità di comando vi: <UpArrow>, <k>, <->

ReverseSearchHistory

Eseguire una ricerca incrementale all'indietro nella cronologia.

  • Modalità Windows: Ctrl+r
  • Modalità Emacs: Ctrl+r
  • Modalità di inserimento vi: Ctrl+r
  • Modalità di comando vi: <Ctrl+r>

ViSearchHistoryBackward

Richiede una stringa di ricerca e avvia la ricerca su AcceptLine.

  • Modalità di comando vi: </>

Funzioni varie

CaptureScreen

Avviare l'acquisizione di schermata interattiva: le frecce su/giù selezionano le righe, immettere copie del testo selezionato negli Appunti come testo e HTML.

  • La funzione non è associato.

ClearScreen

Cancellare la schermata e disegnare la linea corrente nella parte superiore dello schermo.

  • Modalità Windows: Ctrl+l
  • Modalità Emacs: Ctrl+l
  • Modalità di inserimento vi: Ctrl+l
  • Modalità di comando vi: <Ctrl+l>

DigitArgument

Avviare un nuovo argomento di cifra da passare ad altre funzioni. È possibile usarlo come moltiplicatore per la funzione successiva richiamata da un tasto di scelta rapida. Ad esempio, premendo <Alt+1> <Alt+0> il valore dell'argomento cifra viene impostato su 10. Quindi, premendo il # tasto vengono inviati 10 # caratteri (##########) alla riga di input. Analogamente, è possibile usarlo con altre operazioni, ad esempio <Delete> o Left-Arrow.

  • Modalità Windows: Alt+0, Alt+1Alt+2, Alt+3, Alt+4, Alt+5, Alt+6, Alt+7, Alt+8, Alt+9Alt+-
  • Modalità Emacs: Alt+0, Alt+1, Alt+2Alt+3, , Alt+4, Alt+5Alt+6, Alt+7, Alt+8, , Alt+9Alt+-
  • Modalità di comando vi: <0>, <1>, <3><2>, <4>, <5>, <6><7>, , <8><9>

InvokePrompt

Cancella il prompt corrente e chiama la funzione prompt per riprodurre nuovamente il prompt. Utile per i gestori di chiavi personalizzati che modificano lo stato. Ad esempio, modificare la directory corrente.

  • La funzione non è associato.

ScrollDisplayDown

Scorrere la visualizzazione verso il basso di una schermata.

  • Modalità Windows: PageDown
  • Modalità Emacs: PageDown

ScrollDisplayDownLine

Scorrere la visualizzazione verso il basso di una riga.

  • Modalità Windows: Ctrl+PageDown
  • Modalità Emacs: Ctrl+PageDown

ScrollDisplayToCursor

Scorrere la visualizzazione fino al cursore.

  • Modalità Emacs: Ctrl+End

ScrollDisplayTop

Scorrere la visualizzazione fino alla parte superiore.

  • Modalità Emacs: Ctrl+Home

ScrollDisplayUp

Scorrere lo schermo verso l'alto di una schermata.

  • Modalità Windows: PageUp
  • Modalità Emacs: PageUp

ScrollDisplayUpLine

Scorrere la visualizzazione verso l'alto di una riga.

  • Modalità Windows: Ctrl+PageUp
  • Modalità Emacs: Ctrl+PageUp

ShowCommandHelp

Fornisce una visualizzazione della Guida completa dei cmdlet. Quando il cursore si trova alla fine di un parametro completamente espanso, premendo la <F1> chiave posiziona la visualizzazione della Guida nella posizione del parametro.

La Guida viene visualizzata in un buffer dello schermo alternativo usando un cercapersone di Microsoft.PowerShell.Pager. Quando si esce dal cercapersone, si torna alla posizione originale del cursore sullo schermo originale. Questo cercapersone funziona solo nelle applicazioni terminal moderne, ad esempio Terminale Windows.

  • Modalità Windows: F1
  • Modalità Emacs: F1
  • Modalità di inserimento vi: F1
  • Modalità di comando vi: <F1>

ShowKeyBindings

Mostra tutte le chiavi associate.

  • Modalità Windows: Ctrl+Alt+?
  • Modalità Emacs: Ctrl+Alt+?
  • Modalità di inserimento vi: Ctrl+Alt+?

ShowParameterHelp

Fornisce la Guida dinamica per i parametri visualizzandola sotto la riga di comando corrente, ad esempio MenuComplete. Quando si preme il <Alt+h> tasto, il cursore deve trovarsi alla fine del nome del parametro completamente espanso.

  • Modalità Windows: Alt+h
  • Modalità Emacs: Alt+h
  • Modalità di inserimento vi: Alt+h
  • Modalità di comando vi: <Alt+h>

ViCommandMode

Passare dalla modalità operativa corrente da Vi-Insert a Vi-Command.

  • Modalità di inserimento vi: Escape

ViDigitArgumentInChord

Avviare un nuovo argomento di cifra da passare ad altre funzioni mentre in uno degli accordi di vi.

  • La funzione non è associato.

ViEditVisually

Modificare la riga di comando in un editor di testo specificato da $env:EDITOR o $env:VISUAL.

  • Modalità Emacs: Ctrl+x,Ctrl+e
  • Modalità di comando vi: <v>

ViExit

Esce dalla shell.

  • La funzione non è associato.

ViInsertMode

Passare alla modalità Di inserimento.

  • Modalità di comando vi: <i>

WhatIsKey

Leggere una chiave e indicare a cosa è associata la chiave.

  • Modalità Windows: Alt+?
  • Modalità Emacs: Alt+?

Funzioni di stima

AcceptNextSuggestionWord

Accettare la parola successiva del suggerimento inline o selezionato

  • La funzione non è associato.

AcceptSuggestion

Quando si usa InlineView come stile di visualizzazione per la stima, accettare il suggerimento inline corrente.

  • La funzione non è associato.

NextSuggestion

Quando si usa ListView come stile di visualizzazione per la stima, passare al suggerimento successivo nell'elenco.

  • La funzione non è associato.

PreviousSuggestion

Quando si usa ListView come stile di visualizzazione per la stima, passare al suggerimento precedente nell'elenco.

  • La funzione non è associato.

ShowFullPredictionTooltip

Mostra la descrizione comando dell'elemento di elenco attualmente selezionato nella visualizzazione completa.

  • Modalità Windows: F4
  • Modalità Emacs: F4
  • Modalità di inserimento vi: F4

SwitchPredictionView

Cambiare lo stile di visualizzazione per la stima tra InlineView e ListView.

  • Modalità Windows: F2
  • Modalità Emacs: F2
  • Modalità di inserimento vi: F2

Funzioni di ricerca

CharacterSearch

Leggere un carattere e cercare in avanti l'occorrenza successiva di tale carattere. Se viene specificato un argomento, cercare avanti (o indietro, se negativo) per l'ennesima occorrenza.

  • Modalità Windows: F3
  • Modalità Emacs: Ctrl+]
  • Modalità di inserimento vi: F3
  • Modalità di comando vi: <F3>

CharacterSearchBackward

Leggere un carattere e cercare all'indietro l'occorrenza successiva di tale carattere. Se viene specificato un argomento, eseguire la ricerca all'indietro (o avanti se negativo) per l'ennesima occorrenza.

  • Modalità Windows: Shift+F3
  • Modalità Emacs: Ctrl+Alt+]
  • Modalità di inserimento vi: Shift+F3
  • Modalità di comando vi: <Shift+F3>

RepeatLastCharSearch

Ripetere l'ultima ricerca di caratteri registrata.

  • Modalità di comando vi: <;>

RepeatLastCharSearchBackwards

Ripetere l'ultima ricerca di caratteri registrata, ma nella direzione opposta.

  • Modalità di comando vi: <,>

RepeatSearch

Ripetere l'ultima ricerca nella stessa direzione di prima.

  • Modalità di comando vi: <n>

RepeatSearchBackward

Ripetere l'ultima ricerca nella stessa direzione di prima.

  • Modalità di comando vi: <N>

SearchChar

Leggere il carattere successivo e quindi trovarlo, andando avanti.

  • Modalità di comando vi: <f>

SearchCharBackward

Leggere il carattere successivo e quindi trovarlo, tornando indietro.

  • Modalità di comando vi: <F>

SearchCharBackwardWithBackoff

Leggere il carattere successivo e quindi trovarlo, tornare indietro e quindi tornare indietro di un carattere.

  • Modalità di comando vi: <T>

SearchCharWithBackoff

Leggere il carattere successivo e quindi trovarlo, andare avanti e quindi tornare indietro di un carattere.

  • Modalità di comando vi: <t>

SearchForward

Richiede una stringa di ricerca e avvia la ricerca su AcceptLine.

  • Modalità di comando vi: <?>

Funzioni di selezione

ExchangePointAndMark

Il cursore viene posizionato nella posizione del contrassegno e il segno viene spostato nella posizione del cursore.

  • Modalità Emacs: Ctrl+x,Ctrl+x

SelectAll

Selezionare l'intera riga.

  • Modalità Windows: Ctrl+a

SelectBackwardChar

Regolare la selezione corrente per includere il carattere precedente.

  • Modalità Windows: Shift+LeftArrow
  • Modalità Emacs: Shift+LeftArrow

SelectBackwardsLine

Regolare la selezione corrente in modo da includere dal cursore all'inizio della riga.

  • Modalità Windows: Shift+Home
  • Modalità Emacs: Shift+Home

SelectBackwardWord

Regolare la selezione corrente in modo da includere la parola precedente.

  • Modalità Windows: Shift+Ctrl+LeftArrow
  • Modalità Emacs: Alt+B

SelezionareCommandArgument

Effettuare la selezione visiva degli argomenti del comando. La selezione di argomenti è compresa nell'ambito di un blocco di script. In base alla posizione del cursore, cerca dal blocco di script più interno al blocco di script all'esterno e si arresta quando trova qualsiasi argomento nell'ambito di un blocco di script.

Questa funzione rispetta DigitArgument. Considera i valori degli argomenti positivi o negativi come offset in avanti o indietro rispetto all'argomento attualmente selezionato o dalla posizione corrente del cursore quando non è selezionato alcun argomento.

  • Modalità Windows: Alt+a
  • Modalità Emacs: Alt+a

SelectForwardChar

Regolare la selezione corrente per includere il carattere successivo.

  • Modalità Windows: Shift+RightArrow
  • Modalità Emacs: Shift+RightArrow

SelectForwardWord

Regolare la selezione corrente in modo da includere la parola successiva usando ForwardWord.

  • Modalità Emacs: Alt+F

SelectLine

Regolare la selezione corrente in modo da includere dal cursore alla fine della riga.

  • Modalità Windows: Shift+End
  • Modalità Emacs: Shift+End

SelectNextWord

Regolare la selezione corrente per includere la parola successiva.

  • Modalità Windows: Shift+Ctrl+RightArrow

SelezionareShellBackwardWord

Regolare la selezione corrente per includere la parola precedente usando ShellBackwardWord.

  • La funzione non è associato.

SelezionareShellForwardWord

Regolare la selezione corrente per includere la parola successiva usando ShellForwardWord.

  • La funzione non è associato.

SelezionareShellAvantiWord

Regolare la selezione corrente per includere la parola successiva usando ShellNextWord.

  • La funzione non è associato.

SetMark

Contrassegnare la posizione corrente del cursore da usare in un comando di modifica successivo.

  • Modalità Emacs: Ctrl+@

API di supporto per l'associazione di chiavi personalizzate

Le funzioni seguenti sono pubbliche in Microsoft.PowerShell.PSConsoleReadLine, ma non possono essere associate direttamente a una chiave. La maggior parte è utile nelle associazioni di tasti personalizzate.

void AddToHistory(string command)

Aggiungere una riga di comando alla cronologia senza eseguirla.

void ClearKillRing()

Cancellare l'anello di morte. Questa operazione viene usata principalmente per i test.

void Delete(int start, int length)

Eliminare i caratteri di lunghezza dall'inizio. Questa operazione supporta l'annullamento/rollforward.

void Ding()

Eseguire l'azione Ding in base alle preferenze dell'utente.

void GetBufferState([ref] string input, [ref] int cursor)
void GetBufferState([ref] Ast ast, [ref] Token[] tokens,
  [ref] ParseError[] parseErrors, [ref] int cursor)

Queste due funzioni recuperano informazioni utili sullo stato corrente del buffer di input. Il primo è più comunemente usato per i casi semplici. Il secondo viene usato se l'associazione esegue un'operazione più avanzata con Ast.

IEnumerable[Microsoft.PowerShell.KeyHandler]
  GetKeyHandlers(bool includeBound, bool includeUnbound)

IEnumerable[Microsoft.PowerShell.KeyHandler]
  GetKeyHandlers(string[] Chord)

Queste due funzioni vengono usate da Get-PSReadLineKeyHandler. Il primo viene usato per ottenere tutti i tasti di scelta rapida. Il secondo viene usato per ottenere associazioni di tasti specifiche.

Microsoft.PowerShell.PSConsoleReadLineOptions GetOptions()

Questa funzione viene usata da Get-PSReadLineOption e probabilmente non è troppo utile in un'associazione di tasti personalizzata.

void GetSelectionState([ref] int start, [ref] int length)

Se non è presente alcuna selezione nella riga di comando, la funzione restituisce -1 sia in start che in length. Se è presente una selezione nella riga di comando, viene restituita la lunghezza e l'inizio della selezione.

void Insert(char c)
void Insert(string s)

Inserire un carattere o una stringa nel cursore. Questa operazione supporta l'annullamento/rollforward.

string ReadLine(runspace remoteRunspace,
  System.Management.Automation.EngineIntrinsics engineIntrinsics)

Si tratta del punto di ingresso principale di PSReadLine. Non supporta la ricorsione, quindi non è utile in un'associazione di tasti personalizzata.

void RemoveKeyHandler(string[] key)

Questa funzione viene usata da Remove-PSReadLineKeyHandler e probabilmente non è troppo utile in un'associazione di tasti personalizzata.

void Replace(int start, int length, string replacement)

Sostituire un input. Questa operazione supporta l'annullamento/rollforward. Questa opzione è preferibile rispetto a Elimina seguita da Inserisci perché viene considerata come una singola azione per l'annullamento.

void SetCursorPosition(int cursor)

Spostare il cursore sull'offset specificato. Lo spostamento del cursore non viene rilevato per l'annullamento.

void SetOptions(Microsoft.PowerShell.SetPSReadLineOption options)

Questa funzione è un metodo helper usato dal cmdlet Set-PSReadLineOption, ma potrebbe essere utile per un'associazione di tasti personalizzata che vuole modificare temporaneamente un'impostazione.

bool TryGetArgAsInt(System.Object arg, [ref] int numericArg,
  int defaultNumericArg)

Questo metodo helper viene usato per associazioni personalizzate che rispettano DigitArgument. Una chiamata tipica ha un aspetto simile al seguente

[int]$numericArg = 0
[Microsoft.PowerShell.PSConsoleReadLine]::TryGetArgAsInt($arg,
  [ref]$numericArg, 1)

Note

Comportamento dell'evento OnIdle

  • Quando PSReadLine è in uso, l'evento OnIdle viene generato quando ReadKey() si verifica il timeout (nessuna digitazione in 300 ms). L'evento può essere segnalato mentre l'utente sta modificando una riga di comando, ad esempio l'utente sta leggendo la Guida per decidere quale parametro usare.

    A partire da PSReadLine 2.2.0-beta4, il comportamento OnIdle è stato modificato per segnalare l'evento solo se è presente un ReadKey() timeout e il buffer di modifica corrente è vuoto.

Vedi anche