Est-il possible d'utiliser la touche «!» Au lieu de la touche «F8» dans Powershell?

1

Je suis nouveau à Powershell et j'essaie de trouver si je peux utiliser ! au lieu de F8 pour revenir en arrière dans l'historique des commandes et renvoyer une commande qui correspond au texte sur la ligne de commande.

J'utilise Surface Pro avec une couverture de type et c'est vraiment pénible de taper F8 ou tout F* .

je trouve ! sous Linux vraiment pratique et je me demande si je peux changer le raccourci clavier ou remapper la même fonctionnalité de F8 à ! au lieu.

Ruby
la source
Vous pourriez utiliser #text<TAB> effectuer une recherche par historique PowerShell.
PetSerAl

Réponses:

1

Installer PSReadLine . Ajouter quelque chose comme ceci à votre profil $:

if ($host.Name -eq 'ConsoleHost')
{
    Import-Module PSReadline
    Set-PSReadlineKeyHandler -Key '!' -Function ReverseSearchHistory
}

le Set-PSReadlineKeyHandler change la clé de recherche historique de la valeur par défaut de ctrl + r à ! .

dangph
la source
HistorySearchBackward est la fonction exacte F8 est par défaut btw - pas ReverseSearchHistory.
Nilzor
0

Je ne pense pas. Powershell utilise le ! comme un alias pour le not opérateur.

La chose intéressante est que si vous exécutez le alias commande, il répertorie tous les alias construits, cependant ! n'est pas répertorié. Donc, je ne pense pas que cela puisse être remappé. Il doit être codé en dur, car il est utilisé très souvent.

Keltari
la source
Je suis d'accord avec Keltari - ! est traité en tant qu'opérateur de négation conditionnelle. Vous pouvez toutefois consulter le module PSReadline - consultez le Set-PSReadlineKeyHandler cmdlet.
megamorf