Angenommen, ich mache eine Auflistung und sortiere die Dateien nach ihrem zeitlichen Attribut:
ls -ltr
-rwxrwxrwx 1 bla bla 4096 Feb 01 20:10 foo1
-rwxrwxrwx 1 bla bla 4096 Feb 01 20:12 foo2
.
.
.
-rwxrwxrwx 1 bla bla 4096 Mar 05 13:25 foo1000
Was muss ich hinter dem ls -ltr in einer Rohrkette hinzufügen, um nur die letzte Zeile der Auflistung zu erhalten? Ich weiß, dass es sed und awk gibt, aber ich weiß nicht, wie ich sie verwenden soll, ich weiß nur, was sie können.
command-line
sed
awk
ls
Abdul Al Hazred
quelle
quelle
sed -n '$p'
macht das gleiche, ist aber wirklichtail -1
das richtige Werkzeug für den Job.sed '$!d s/.*: 0\+//' /proc/cpuinfo
Sie suchen
tail
:Dies zeigt nur die letzte Zeile der
ls -ltr
Ausgabe an. Sie können die Anzahl der Zeilen steuern, indem Sie den Wert nach ändern-n
. Wenn Sie-n 1
ganz weglassen, erhalten Sie zehn Zeilen.quelle
tail -1
...-n
ist überflüssig.tail -1
ist veraltet (siehe Abschnitt „RATIONALE“ der POSIX-Spezifikation fürtail
oder den letzten Teil des GNU-tails
Handbuchs ); In diesem Fall funktioniert es vorerst immer noch, aber es ist am besten, es nicht in Beispielen zu verwenden.Mit awk:
quelle