Filtrage de l'historique ZSH par commande

On m'a dit que dans ZSH vous pourriez faire quelque chose comme command et puis quand vous frappez, il filtrerait l'historique en fonction de la commande donnée. Mais quand j'essaie cela, il fait juste tourner l'histoire comme le fait bash. Est-ce désactivée par défaut?

33
demandé sur Guu 2012-12-26 16:06:26

6 réponses

Hit Ctrl+R, Tapez quelques lettres, il trouvera la commande précédente avec ces lettres, continuez à appuyer sur Ctrl + R pour continuer à travers les résultats précédents.
Fonctionne dans bash, zsh (et d'autres coquilles je suppose).

Ce que j'aime personnellement, c'est: Tapez des lettres, Appuyez sur Up, les commandes précédentes commençant par les mêmes lettres apparaissent. Très puissant, j'adore ça.
Vous devez lier les clés que vous voulez history-beginning-search-backward et history-beginning-search-forward.

Au cas où cela ne vous suffirait pas, zsh a beaucoup de options, essayez de regarder dans zsh Line Editor et dites-nous.
Pour bash, moins puissant mais plus commun, Bash commandes pour l'histoire .

54
répondu lolesque 2012-12-26 14:24:46

Utiliser le point d'exclamation:

> !<starts-with this string>

Vous pouvez Flèche Haut / Bas à travers toutes les commandes qui ont commencé avec cela. J'ai utiliser "!v " tout le temps pour obtenir ma commande précédente pour ouvrir un fichier avec Vim.

Vous pouvez également utiliser un point d'interrogation pour rechercher au-delà du début de la chaîne,

> !?status

Peut trouver "git status".

7
répondu zjaquish 2013-01-22 23:05:59

C'est une fonctionnalité disponible dans poisson, mais il semble que quelqu'un a fait une zsh plugin pour elle. Il n'est pas disponible en zsh standard.

5
répondu Frost 2012-12-26 12:21:20

Utiliser percol dynamique de recherche et de naviguer à travers votre histoire avec Ctrl-r.

  • installer percol: sudo pip install percol
  • ajouter le zsh-histoire-recherche extrait de code pour votre .fichier zshrc.

Après un Ctrl-r, vous pouvez voir l'ensemble de votre histoire dans la même fenêtre. La recherche d'un mot clé (dynamiquement) réduit cette liste. Vous pouvez utiliser des liaisons (comme ceci emacs comme config) pour naviguer vers le haut et dans la liste et éventuellement faire une sélection.

Voici une recherche de toutes les commandes sudo install disponibles dans l'historique avec sudo make install sélectionné.

percol_history_search_example

Entrez émet la commande sélectionnée.

2
répondu mihai 2015-11-22 18:13:03

Avec les raccourcis clavier vim activés dans zsh, vous pouvez utiliser vi-history-search-backward ( / ) en mode de commande vi.

2
répondu Konrad Haenel 2015-11-26 10:10:35

Si vous ne voulez pas ajouter de tout les raccourcis clavier, vous pouvez effectuer une recherche par défaut à l'aide de Ctrl+R pour revenir en arrière & Ctrl+S pour aller de l'avant.

Vous pouvez démarrer la recherche avec les raccourcis de la touche Ctrl+R ou Ctrl+S

0
répondu Swaps 2018-07-18 06:56:53