GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann man verhindern, dass `ls` die Ausgabe sortiert?

Ich habe eine bestimmte Reihenfolge von Dateien, die ich auflisten möchte, falls sie vorhanden sind. rund 40 Dateien. Eine Art Vorrang. Also habe ich versucht:

ls -1d         /opt/foo/lib.jar /opt/bar/lib.jar

Ich hatte erwartet, dass dies /opt/foo/lib.jar auflistet zuerst, wenn beide existieren.
Aber eigentlich druckt es den bar zuerst und das foo danach.

Gibt es eine Möglichkeit, ls zu erstellen die Einträge in der in den Parametern angegebenen Reihenfolge auflisten?
Oder ein alternativer Ansatz mit find ?

Akzeptierte Antwort:

Mit GNU ls , könnten Sie das -U versuchen Möglichkeit:

-U :nicht sortieren; Einträge in Verzeichnisreihenfolge auflisten

(obwohl wir hier nicht den Inhalt von Verzeichnissen auflisten, also ist der Teil, auf den es ankommt, nicht sortieren ).

$ ls -1dU /opt/foo/lib.jar /opt/bar/lib.jar
/opt/foo/lib.jar
/opt/bar/lib.jar

Etwas portabler (funktioniert mit GNU und FreeBSD ls , aber nicht mit herkömmlichem ls Implementierungen und ist auch nicht POSIX), können Sie ls -1df verwenden :

$ ls -1df /opt/foo/lib.jar /opt/bar/lib.jar
/opt/foo/lib.jar
/opt/bar/lib.jar

Linux
  1. Wie weist man die Ausgabe eines Befehls einer Shell-Variablen zu?

  2. Wie hebt man ein Wort in der Ausgabe von „Katze“ hervor?

  3. Wie kann man die Ausgabe von Grep unterdrücken, sodass nur der Exit-Status zurückgegeben wird?

  4. Wie kann ich von der Befehlszeile aus feststellen, auf welcher Version von Os X ich mich befinde?

  5. Linux – Die Buffers-Spalte in der Ausgabe von Free?

Wie kann man verhindern, dass Benutzer auf das Root-Verzeichnis zugreifen?

Crontab-Protokoll:So protokollieren Sie die Ausgabe meines Cron-Skripts

Wie hängt man die Ausgabe an eine Datei an?

Wie extrahiere ich die Dauer aus der ffmpeg-Ausgabe?

Wie kann ich die Ausgabe von grep an cp weiterleiten?

So interpretieren Sie die Ausgabe von netstat -o / netstat --timers