Wie kann ich mithilfe von ls -l mit einer Pipe erreichen, dass die 8. Datei in der Liste ohne die Dateidetails angezeigt wird?

Wie kann ich mithilfe von ls -l mit einer Pipe erreichen, dass die 8. Datei in der Liste ohne die Dateidetails angezeigt wird?

Ich möchte den 8. Dateinamen in einem Verzeichnis mit ls -l und einer Pipe anzeigen. Beispielsweise würde mir ls -l | wc -1 die Anzahl anzeigen, ich möchte jedoch den 8. Dateinamen in der Verzeichnisliste zurückgegeben haben, egal, welcher dieser lautet. Ich habe mir grep und Platzhalter angesehen, weiß aber immer noch nicht, welcher Befehl mir das gewünschte Ergebnis liefern würde.

Danke

Antwort1

versuchen

ls -l | head -n 9 | tail -n 1

Wenn Sie nur den Namen möchten, können Sie ihn cutam Ende verwenden

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f8

trist das Ersetzen mehrerer Leerzeichen und Tabulatoren durch ein Leerzeichen

Antwort2

Ein anderer Weg ist wie folgt.

ls -l | sed -n '9p'

Wenn Sie nur den Datei- oder Verzeichnisnamen möchten, verwenden Sie dies.

ls -l | sed -n '9p' | awk '{print $9}'

jcubic, bist du sicher, dass du das wolltest?

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f8

Ich würde denken, dass er den Datei- oder Verzeichnisnamen so haben möchte.

ls -l | head -n 9 | tail -n 1 | tr -s ' ' | cut -d' ' -f9

Antwort3

ls | awk 'NR==8'

Antwort4

Verwenden Sie einfach nicht-l

ls | Kopf -8 | Schwanz -1

Sie erhalten den Dateinamen und lsdie Dateien werden wie folgt sortiert ls -l:

verwandte Informationen