Suche in Manpages ohne Berücksichtigung der Groß- / Kleinschreibung

18

Gibt es eine Möglichkeit, Manpages unabhängig von Groß- und Kleinschreibung zu durchsuchen? Mit der '/' Suchfunktion wird die genaue Groß- / Kleinschreibung ermittelt.

FazJaxton
quelle
5
Es gibt keine "Suche in Manpage". Eigentlich ist es die Suche im Pager, die die Manpage anzeigt. Hängt von der manImplementierung ab, die Sie verwenden, und von dem Pager, den Sie bevorzugen, aber ich habe export MANPAGER='less -I'.
Manatwork
@ manatworks Punkt ist das -Iheißt --IGNORE-CASE, even if the pattern contains uppercase letters, siehe man less.
Terdon

Antworten:

18

Wird kein anderer Pager angegeben, manwerden lessManpages angezeigt.

Die anderen Antworten, bei denen die Pager-Befehlszeile geändert wird, sind korrekt. Sie können jedoch auch eingeben, -iwährend weniger ausgeführt wird. Von der less man Seite:

- Gefolgt von einem der Befehlszeilen-Optionsbuchstaben (siehe OPTIONEN unten), ändert dies die Einstellung dieser Option und gibt eine Meldung aus, die die neue Einstellung beschreibt.

Wenn Sie also -iweniger eingeben, ändert sich die Einstellung auf dieselbe Weise wie bei der Angabe in der Befehlszeile. Ich habe den Hinweis erhalten, dass dies funktionieren würde, indem Sie eine Suche ohne Berücksichtigung der Groß- / Kleinschreibung mit einem Mustermodifikator mit weniger durchführen und dann die Erklärung in der Manpage finden.

FazJaxton
quelle
13

Nur wenn Sie Großbuchstaben verwenden, nicht wenn Sie nur Kleinbuchstaben verwenden. Führen Sie zum Beispiel Folgendes aus man bashund versuchen Sie es:

  • /invoc <== Groß- / Kleinschreibung wird nicht berücksichtigt
  • /Invoc <== Groß- und Kleinschreibung beachten
  • /INVOC <== Groß- und Kleinschreibung beachten

Wie @manatwork in den Kommentaren dargelegt hat, können Sie dieses Verhalten auch steuern, indem Sie es export MANPAGER='less -I'zu Ihrem hinzufügen ~/.profile. Die MANPAGERVariable definiert, welches Programm mit dem manBefehl verwendet wird. Die -IMittel (von man less):

   -I or --IGNORE-CASE
          Like -i, but searches ignore case even if the  pattern  contains
          uppercase letters.

Andere relevante Optionen sind (diese ist normalerweise standardmäßig aktiviert):

   -i or --ignore-case
          Causes searches to ignore case; that is, uppercase and lowercase
          are  considered identical.  This option is ignored if any upper‐
          case letters appear in the search pattern; in other words, if  a
          pattern  contains  uppercase  letters, then that search does not
          ignore case.

Wenn Sie export MANPAGER="less -I"; man bashalso in der Lage sind, /iNvOcauf eine Art und Weise zu suchen, bei der die Groß- und Kleinschreibung nicht berücksichtigt wird.

terdon
quelle
+1 Weißt du zufällig, wie man Groß- und Kleinschreibung in einem Suchmuster erzwingen kann?
Joseph R.
@ JosephR. man bash | grep -C 5 invocaber das ist Betrug.
Terdon
Ja, nicht genau die Antwort, nach der ich gesucht habe. Dies kann eine weitere Frage wert sein ...
Joseph R.
1
@ JosephR. anscheinend können Sie kompilieren less, um PCREs zu verwenden, die den Trick tun könnten.
Terdon
Die Groß- und Kleinschreibung wird nur dann berücksichtigt, wenn in der Befehlszeile "-i" angegeben ist. Ohne diese Angabe wird bei allen Suchen zwischen Groß- und Kleinschreibung unterschieden.
FazJaxton