Se hai una directory con dozzine di file zippati o rar, puoi eseguire un singolo comando per decomprimerli tutti in un unico passaggio, grazie alla potenza della shell bash.
Per questa attività, useremo la struttura di comando del ciclo per bash. Sostituire con un nome variabile, e
- con un comando che emette un elenco o un elenco esplicito.
for in
do command $; done
Puoi eseguirlo su una sola riga con questa sintassi invece:
for in
;do command $;done
Quindi, se vuoi rimuovere un elenco di file, puoi usare questo comando. Non hai necessariamente bisogno delle virgolette, ma aiuta quando i nomi dei file hanno spazi o qualcosa di simile in loro.
for f in *.rar;do unrar e “$f”;done
Se si desidera utilizzare 7zip per estrarre un elenco di file:
for f in *.001;do 7z e “$f”;done
O se volevi decomprimere un elenco di file:
for f in *.zip;do unzip “$f”;done
Puoi anche concatenare i comandi se lo desideri. Ad esempio, se tutti i file zip contenevano file.txt e volevi decomprimerli e spostare i file decompressi in un'altra directory:
for f in *.zip;do unzip “$f”;done; for f in *.txt;do mv “$f” /myfolder/;done
La shell bash è così incredibilmente potente … questo non tocca nemmeno il potere, ma dovrebbe darti una buona idea di ciò che è possibile.