Ich versuche, das erste Feld der ersten Zeile einer Ausgabe zu drucken. Hier ist der Fall. Ich muss nur SUSE
von dieser Ausgabe drucken .
# cat /etc/*release
SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 2
Versucht mit, cat /etc/*release | awk {'print $1}'
aber das druckt die erste Zeichenfolge jeder Zeile
SUSE
VERSION
PATCHLEVEL
tac file | awk 'END{print $1}'
aber dann wurde mir klar, dass es ein bisschen zu viel sein könnte.ugly
. Es ist sogar noch besser, da es bei einer großen Datei viel Zeit spart, wenn es beim Auffinden beendet wird und die Verarbeitung stoppt.NR==1
es implizit war . In der Antwort wurde ein weiteres Beispiel hinzugefügt, das wahrscheinlich etwas mehr verdeutlicht.print the first string of the first row of an output
also hierexit
wäre das in Ordnung.Geben Sie die Zeilennummer mithilfe der
NR
integrierten Variablen an.awk 'NR==1{print $1}' /etc/*release
quelle
Versuche dies:
head -1 /etc/*release | awk '{print $1}'
quelle
Sie könnten das
head
anstelle von verwendencat
:head -n1 /etc/*release | awk '{print $1}'
quelle
sed -n 1p /etc/*release |cut -d " " -f1
wenn tabulatorgetrennt:
quelle
Versuchen
sed 'NUMq;d' /etc/*release | awk {'print $1}'
Dabei ist NUM die Zeilennummer
ex. sed '1q;d' /etc/*release | awk {'print $1}'
quelle
sed
thi pan kari sakiye -sed -r '1s/([^ ]+) .*/\1/;q' /etc/*release
:)
awk, sed, pipe, das ist schwer
set `cat /etc/*release`; echo $1
quelle
Sie können den Prozess beenden, auf dem der Container ausgeführt wird.
Mit diesem Befehl können Sie die mit dem Docker-Container verbundenen Prozesse auflisten:
ps -aux | grep $(docker ps -a | grep container-name | awk '{print $1}')
Jetzt haben Sie die Prozess-IDs, um mit kill oder kill -9 zu töten .
quelle