entpacken, wie man Top-Verzeichnisse kürzt

entpacken, wie man Top-Verzeichnisse kürzt

Ich habe ein Zip-Archiv. Der unzip -l myarchive.zipBefehl gibt diese Auflistung aus:

top/subtop/files/1.txt
top/subtop/files2/2.txt
etc

Die Stammordner sind für alle Dateien die obersten/untersten Ordner. Wie entpacke ich diese Dateien ohne die beiden obersten/untersten Ordner?

Z. B. wenn ich mich im Verzeichnis /home/myuser/public_html befinde files/1.txtund files2/2.txtdirekt in dieses Verzeichnis extrahiert werden soll.

Ich habe es versucht unzip myarchive.zip top/subtop/*, aber es wurden trotzdem Top-/Subtop-Verzeichnisse erstellt.

Antwort1

Leider ist das nicht möglich. Ihre einzige echte Möglichkeit besteht darin, sie nach dem Extrahieren einfach zu verschieben.

Antwort2

tarVielleicht möchten Sie den Befehl ausprobieren , der über eine --strip-componentsFunktion verfügt und mit ZIP-Dateien arbeiten kann.

Antwort3

Am Beispiel von JMeter:

# It's a good idea to set JMETER_HOME.
export JMETER_HOME=/usr/local/jmeter
unzip -q /tmp/apache-jmeter-5.4.1.zip -d $JMETER_HOME
for a in `ls -d -1 $JMETER_HOME/*`; do mv $a/* $JMETER_HOME; rmdir $a; done

Einfach und tragbar.

Antwort4

Ich habe diesen Befehl verwendet, um alle Dateien in mein Stammdateiverzeichnis zu kopieren, nachdem ich alle komprimierten Dateien extrahiert hatte. Das hat super funktioniert. Riesige Zeitersparnis:

for /r %f in (00P*) do @copy "%f" 

(http://mlichtenberg.wordpress.com/2011/01/25/command-line-fun-how-to-flatten-a-folder-hierarchy/)

verwandte Informationen