Manchmal müssen wir mehrere gezippte und seltene Dateien gleichzeitig extrahieren, die sich alle in einem einzigen Ordner befinden. Dies über die Ubuntu-Benutzeroberfläche zu tun, ist ziemlich einfach; Sie müssen lediglich alle Dateien auswählen, die Sie extrahieren möchten, mit der rechten Maustaste klicken und die Option Extrahieren verwenden, um sie insgesamt zu extrahieren. Der eigentliche Deal ist, wenn wir dieselbe Aufgabe über die Befehlszeile ausführen möchten. Es kann sich als ziemlich langwierig und ehrlich gesagt unlogisch erweisen, sie einzeln zu extrahieren, indem Sie die Dateiextraktionsbefehle einzeln eingeben. Hier kommt die Bash-for-Schleife zur Rettung. Sie können damit mehrere ähnliche Vorgänge gleichzeitig ausführen.
Dieser Artikel beschreibt, wie Sie die for-Schleife verwenden können, um mehrere Dateien des folgenden Typs über die Ubuntu-Befehlszeile zu extrahieren:
- Zip-Dateien
- Tar.xz-Dateien
- Rar-Dateien
- 7z-Dateien
Wir haben die in diesem Artikel erwähnten Befehle und Verfahren auf einem Ubuntu 18.04 LTS-System ausgeführt. Unsere Beispiel-ZIP- und TAR-Ordner enthalten 4 komprimierte Dateien mit gezippten bzw. rar’d-Dateitypen. Wir verwenden die Terminal-Anwendung für die Verwendung der Ubuntu-Befehlszeile. Sie können es über das System-Dash oder die Tastenkombination Strg+Alt+T öffnen.
Mehrere Dateien gleichzeitig entpacken
Nehmen wir an, dass ein Ordner, in unserem Fall ein Ordner „zip_files“, mehrere gezippte Dateien enthält und wir sie gleichzeitig extrahieren möchten.
So können Sie die for-Schleife verwenden, um die Aufgabe zu vereinfachen:
$ for z in *.zip do unzip $z; done
So erreichen Sie dieselbe Aufgabe mit einem einzigen Befehl:
$ for z in *.zip; do unzip "$z"; done
Mehrere tar.xz-Dateien auf einmal extrahieren
Angenommen, ein Ordner enthält mehrere tar.xz-Dateien und wir möchten sie gleichzeitig extrahieren.
So können Sie die for-Schleife verwenden, um die Aufgabe zu vereinfachen:
$ for z in *.tar.xz do tar -xf $z; done
So erreichen Sie dieselbe Aufgabe mit einem einzigen Befehl:
$ for z in *.tar.xz; do tar -xf "$z"; done
Mehrere Dateien gleichzeitig entpacken
Verwenden Sie den folgenden Befehl, um mehrere RAR-Dateien auf einmal zu entpacken.
$ for z in *.rar do unrar e $z; done
Oder,
$ for f in *.rar; do unrar e “$f”; done
Mehrere 7z-Dateien auf einmal extrahieren
Verwenden Sie den folgenden Befehl, um mehrere 7z-Dateien auf einmal zu extrahieren.
$ for z in *.7z do 7z e $z; done
Oder,
$ for z in *.7z; do 7z e "$z"; done
Durch die Verwendung der Bash for-Schleife können Sie die hektische Aufgabe erledigen, mehrere komprimierte Dateien auf einmal zu extrahieren. Diese kleine Fähigkeit, die Sie in diesem Artikel gelernt haben, ist besonders praktisch, wenn wir bis zu Hunderte komprimierter Dateien gleichzeitig extrahieren müssen. Nicht nur zum Extrahieren von Dateien, sondern Sie können die Leistung der for-Schleife auch nutzen, um verschiedene andere ähnliche Aufgaben auszuführen, die länger dauern können, wenn Sie sie einzeln ausführen.