Gibt es eine Möglichkeit, in Linux in alphabetischer Reihenfolge in die Standardausgabe zu entpacken? Ich entpacke in eine FIFO-Datei und die Dateien geraten in der falschen Reihenfolge
Antwort1
Das unzip
Programm extrahiert die Dateien in der Reihenfolge, in der sie im Archiv erscheinen. Wenn es nicht viele Dateien gibt, können Sie eine Liste der zu extrahierenden Dateien erstellen, diese sortieren und unzip
in einer Schleife ausführen, um jede Datei in der gewünschten Reihenfolge zu extrahieren.
So etwas wie (natürlich ein Skript):
#!/bin/sh
FILE=$1
unzip -qq -l $1 | awk '{print $4; }' |sort |\
while :
do
read name
[ -z "$name" ] && break
unzip -p $1 "$name"
done
Die -qq
Option unzip
unterdrückt den Header und ermöglicht das awk
Drucken nur der Dateinamen.