/ / So entpacken Sie mehrere Teere in den Dateinamenordner in Terminal - Linux, Tar

Wie entpacken Sie mehrere Tars in ihrem Dateinamenordner in terminal-linux, tar

Zum Beispiel habe ich 1000 TAR-Dateien. (n0001.tar ~ n1000.tar) Ich möchte jede Datei in jedem Dateinamen entpacken. (n0001.tar Inhalt in n0001 / Ordner)

Wie kann ich das in einem Terminalbefehl tun?

Ich gehe davon aus, dass dieser Befehl geändert werden kann.

for F in alcatelS*.tar; do
tar -xvf "$F"
done

Antworten:

0 für die Antwort № 1

Mit der Parametererweiterung können Sie die Erweiterung aus dem Dateinamen entfernen:

for F in alcatelS*.tar; do
dir=${F%.tar}
( mkdir "$dir" && cd "$dir" && tar -xvf ../"$F" )
done

Das cd passiert in einer Unterschale (...) damit das Arbeitsverzeichnis für die Schleife nicht geändert wird.