Comment puis-je vérifier les pages de manuel pour connaître le paramètre unique de la commande?


12

Exemple: j'utilise la tar -zxvfcommande mais je ne sais pas ce que 'x' signifie.

Comment puis-je vérifier ce paramètre unique sans avoir à faire défiler tout le long man tar?


Veuillez vérifier ce [fil] [1] sur superuser.com. [1]: superuser.com/questions/441654/…
Einar

Réponses:


17

Chercher

xest pour extract.

Une fois que vous êtes à l'intérieur de man, tapez /-xenterpour rechercher des informations sur le paramètre -x,
appuyez sur npour passer à la correspondance -x suivante et Npour la précédente

Rechercher avec Regex

Pour les grandes pages de manuel ou les termes courants, une petite expression régulière peut être utilisée pour affiner la recherche.

Si vous voulez juste l'entrée principale, vous pouvez utiliser /^ *-xpour supprimer la plupart des correspondances superflues.
Cela fonctionne car la plupart des pages de manuel sont formatées avec l'entrée en retrait avec des espaces.

  • ^ * correspond au début de la ligne, avec zéro à plusieurs espaces.
  • -x est la chaîne de recherche.

7

Vous pouvez également greple sortir de la page de manuel avec un certain contexte:

man tar | grep -C5 -- '-x\b'

5

Cela fonctionne dans RHEL6 avec Bash

Dans .bashrc

ajouter

function mans {
       man $1 | less -p "^ +$2"
}

démarrer une nouvelle instance de bash

$ bash

maintenant

mans ls -l

a l'effet désiré.


2

Si vous utilisez Emacs M-x man RET tar, alors C-s -x.

Frappez à C-splusieurs reprises jusqu'à ce que vous soyez au bon endroit, puis appuyez sur Retour.

C-rest le même, mais en arrière. (Mais les deux se terminent par une double frappe en haut / en bas du document.)

De plus, dans des cas comme celui-ci (recherche de page de manuel), la recherche sensible à la casse est préférable. Examinez la case-fold-searchvariable.

L'énorme avantage d'utiliser votre éditeur pour afficher les pages de manuel est que vous connaissez si bien toutes les commandes - navigation, copie, tout ce que vous aimeriez faire, vous savez déjà comment.


0

Je sais que c'est une question un peu ancienne, donc désolé pour la relance, mais j'ai écrit ce script shell simple que vous pouvez utiliser:

function manopt() {
    mn=`man -P cat $1`
    for i in ${@:2}
    do
        echo $mn |  grep --color=always -A5 "^ *$i" | sed -En '/^$/q;p'
    done
}

Utilisez-le par exemple comme:

➜ manopt ls -l -a
       -l     use a long listing format
       -a, --all
              do not ignore entries starting with .

Notez que vous pouvez avoir autant d'arguments que vous le souhaitez, mais ils doivent être valides (et au début de la ligne).


0

En général, j'utilise simplement qui man(1)montre la page formatée en utilisant au moins votre téléavertisseur préféré more(1), et dans l'indicateur de format de page de manuel (plutôt rigide) -xest décrit ci-dessous -x, donc une recherche rapide zéros rapidement dessus.

Si if est un programme GNU (ou au moins un avec un infodocument), une visionneuse d'informations (comme celle intégrée emacs(1)ou autonome pinfo(1)) est un moyen confortable de parcourir la Invokingsection obligatoire , avec tous les détails sur la façon dont le programme est appelé. Encore une fois, la recherche est disponible.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.