2009-06-15 9 views

Répondre

6
man gcc | grep -- "-L" 

Notez l'argument « - » qui signifie « ne pas traiter tout ce qui suit comme une option ». De plus, si vous aviez suivi le message d'erreur "grep --help", il vous aurait été possible de définir explicitement le modèle avec l'option -e/--regexp.

man gcc | grep -e "-L" 
man gcc | grep --regexp="-L" 
+0

@Bryan: Je vous remercie de votre réponse! Il est déroutant que le manuel de Mac pour Grep ne dispose d'aucune documentation sur le -. @ Is - une convention dans toutes les commandes Unix? –

+2

Il s'agit d'une convention pour les commandes unix depuis de nombreuses années, mais toutes les commandes ne suivent pas la convention. –

4

Comme d'autres l'ont dit, grep (et bien d'autres commandes gnu) a une option « - » pour dire grep que le reste des arguments ne doivent pas être traités comme des options pour grep. Cependant, ceci ne vous donnera que des lignes qui ont "-L" dessus, et cela ne vous donnera peut-être pas de contexte. Êtes-vous conscient que l'homme a une capacité de recherche intégrée?

man gcc 
    /-L 

ensuite continuer à frapper 'n' pour voir le prochain match.

+1

Je ne pense pas que 'man' a une recherche intégrée. C'est le travail pour formater les pages man pour la sortie. L'affichage réel est géré par un pager, typiquement "plus" ou sur des systèmes GNU "moins". La fonction/search est une fonction de "less" – MSalters

+1

Pour donner un contexte à la recherche grep, les options -A, -B et -C peuvent être utilisées. 'Grep -C 3' donnera 3 lignes de contexte de sortie dans les deux directions. – ustun

+0

-A semble bon: man grep | grep -e '-A' -A 5 – Yoo

3

Une autre possibilité:

man gcc | grep -e "-L" 
Questions connexes