ps-Trick bei grep eingefgt
This commit is contained in:
@ -219,6 +219,28 @@ Die folgende Tabelle stellt einige der vielen Parameter vor:
|
||||
|
||||
\LTXtable{\textwidth}{tab_kommandos_grep_parameter.tex}
|
||||
|
||||
Im Zusammenhang mit grep st<73><74>t fast jeder Shell-Skripter fr<66>her oder sp<73>ter auf
|
||||
das Problem, da<64> er irgendwas davon abh<62>ngig machen will, ob ein bestimmter
|
||||
Proze<EFBFBD> l<>uft oder nicht. Im Normalfall wird er zuerst folgendes ausprobieren,
|
||||
was aber oft (nicht immer) in die Hose gehen wird:
|
||||
|
||||
\texttt{ps aux | grep }\textit{prozessname}\texttt{ \&\& echo \dq}\textit{l<EFBFBD>uft
|
||||
schon}\texttt{\dq}
|
||||
|
||||
Der Grund daf<61>r ist, da<64> unter Umst<73>nden in der Ausgabe von \texttt{ps} auch
|
||||
das \texttt{grep}-Kommando samt Parameter (\textit{prozessname}) aufgelistet
|
||||
wird. So findet das \texttt{grep}-Kommando sich quasi selbst.
|
||||
|
||||
Abhilfe schafft das folgende Konstrukt:
|
||||
|
||||
\texttt{ps aux | grep \dq}\textit{[p]rozessname}\texttt{\dq~\&\& echo
|
||||
\dq}\textit{l<EFBFBD>uft schon}\texttt{\dq}
|
||||
|
||||
Das p ist jetzt als eine Zeichenmenge (regul<75>rer Ausdruck) angegeben worden.
|
||||
Jetzt sucht \texttt{grep} also nach dem String \textit{prozessname}, in der
|
||||
Ausgabe von \texttt{ps} erscheint das \texttt{grep}-Kommando allerdings mit
|
||||
\textit{[p]rozessname} und wird somit ignoriert.
|
||||
|
||||
\index{grep=\texttt{grep}|)}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user