Rozbalte nebo Unrar mnoho souborů najednou v Linuxu
Pokud máte adresář s desítkami zipů nebo rar'd souborů, můžete spustit jeden příkaz rozbalit je všechny v jednom kroku, díky síle bash shell.
Pro tento úkol použijeme strukturu příkazu bash pro smyčku. Nahraďte s názvem proměnné a příkazem, který vygeneruje seznam nebo explicitní seznam.
pro in
dělat
příkaz $;
Hotovo
Můžete jej spustit na jednom řádku s touto syntaxí místo toho:
pro in, do příkazu $; hotovo
Takže pokud chcete rozbalit seznam souborů, můžete použít tento příkaz. Nemusíte nutně potřebovat citace, ale pomáhá, když mají názvy souborů mezery nebo něco podobného v nich.
pro f in * .rar; do unrar e "$ f"; hotovo
Pokud jste chtěli použít 7zip pro extrahování seznamu souborů:
pro f v * .001; do 7z e "$ f"; hotovo
Nebo pokud chcete rozbalit seznam souborů:
pro f v * .zip; rozbalte "$ f"; hotovo
Dokázali byste dokonce připojit příkazy, pokud byste chtěli. Například pokud všechny vaše soubory zip obsahovaly soubory .txt a chcete je rozbalit a potom přesunout rozbalované soubory do jiného adresáře:
pro f v * .zip; rozbalte "$ f"; hotovo; pro f v * .txt; do mv "$ f" / myfolder /; hotovo
Bash shell je prostě tak neuvěřitelně silný ... to ani nepochopí sílu, ale mělo by vám dát dobrou představu o tom, co je možné.