Was macht "grep -1"?

1058
Sod Almighty

Ich versuche den folgenden Shell-Befehl zu verstehen, um eine Liste von Paketen zu erhalten, die aktualisiert werden können:

dpkg --get-selections | xargs apt-cache policy {} | grep -1 Installed | sed -r 's/(:|Installed: |Candidate: )//' | uniq -u | tac | sed '/--/I,+1 d' | tac | sed '$d' | sed -n 1~2p 

Was bedeutet grep -1das? Ich kann -1in der grep-Manpage oder irgendwo im Internet keine Erwähnung finden .

0
Wäre es "grep --count"? Prasanna vor 8 Jahren 0

3 Antworten auf die Frage

4
quizdog

Die -1Option ist die herkömmliche Unix-Stiloption, die angibt, dass pro Kontextgrep eine 1Zeile mit zusätzlichem Text eingefügt werden soll .

Wenn Sie man grepnach der Überschrift Context Line Control suchen, finden Sie in den folgenden Optionen die verschiedenen Möglichkeiten, wie Sie zusätzliche Kontextzeilen anfordern können. Speziell zu Ihrer Frage sehen Sie:

 -C NUM, -NUM, --context=NUM Print NUM lines of output context. Places a line containing a group separator (--) between contiguous groups of matches. With the -o or --only-matching option, this has no effect and a warning is given. 

Hier ist das -1dokumentiert (wie -NUMNUM 1 ist), so dass sich die folgenden Befehle alle gleich verhalten: grep -1oder grep -C 1odergrep --context=1

0
Sod Almighty

Ich habe es geschafft, die Ergebnisse zu überprüfen. Sie gibt an, wie viele vorangehende und nachfolgende Zeilen (von "Kontext") für jede Übereinstimmung angezeigt werden sollen. In diesem speziellen Fall zeigt grep zusätzlich zu der übereinstimmenden Zeile selbst die vorherige und die nächste Zeile für jede Übereinstimmung an.

Meinten Sie das? http://imgur.com/GcNVkDr Prasanna vor 8 Jahren 0
Wird in der Manpage- und Nutzungsmeldung als -NUM und als [-Information] (http://www.gnu.org/software/grep/manual/grep.html#Context-Line-Control) als -num angezeigt. dave_thompson_085 vor 8 Jahren 0
0
manjesh23

Dies wird nicht genannt grep -1, wenn Sie zum Terminal gehen und die grep --helpEingabe nicht findengrep -1

Sie finden "-NUM". Diese Antwort ist also falsch. DavidPostill vor 8 Jahren 0
Tut mir leid, dass ich noch einmal gefragt habe, lass mich das klarstellen. grep -1 ist ja in Frage, aber grep -NUM steht nicht zur Verfügung -1 oder? manjesh23 vor 8 Jahren 0
'NUM' kann durch eine beliebige Zahl ersetzt werden, also dürfen Sie '-1', '-2', `-3 'verwenden ... siehe die anderen richtigen Antworten. DavidPostill vor 8 Jahren 0
Ich habe den grep-Befehl noch nie benutzt, also hat man grep gemacht, um das zu bekommen. Vielen Dank für das Erklären. manjesh23 vor 8 Jahren 0