Unzip alebo Unrar Mnoho súborov naraz v systéme Linux
Ak máte adresár s desiatkami súborov so zipsom alebo rar'd, môžete spustiť jediný príkaz na rozbalenie všetkých v jednom kroku, vďaka sile bash shellu.
Pre túto úlohu použijeme štruktúru príkazu bash for for loop. Nahradiť názov premennej a buď príkazom, ktorý vygeneruje zoznam alebo explicitný zoznam.
pre in
robiť
príkaz $;
hotový
Môžete to spustiť na jednom riadku pomocou tejto syntaxe:
pre príkaz $; hotovo
Ak chcete rozbaliť zoznam súborov, môžete použiť tento príkaz. Nemusíte nutne potrebovať citácie, ale pomáha, keď názvy súborov majú medzery alebo niečo podobné v nich.
pre f in * .rar; urobte unrar e "$ f"; hotovo
Ak chcete používať 7zip na extrahovanie zoznamu súborov:
pre f in * .001; do 7z e "$ f"; hotovo
Alebo ak by ste chceli rozbaliť zoznam súborov:
pre f v * .zip; rozbaľte "$ f"; hotovo
Môžete dokonca reťaz reťazec príkazov, ak chcete. Napríklad, ak všetky súbory zip obsahovali súbory .txt a chcete ich rozbaliť a presunúť rozbalené súbory do iného adresára:
pre f v * .zip, rozbaľte "$ f"; pre f v * .txt; do mv "$ f" / myfolder /; hotovo
Bush shell je práve tak neuveriteľne silný ... to ani nepochopí moc, ale malo by vám dať dobrú predstavu o tom, čo je možné.