Hvis du har en mappe med snesevis af zip-filer eller rar'd-filer, kan du køre en enkelt kommando for at pakke dem alle ud i ét trin takket være bash shellens kraft.

Til denne opgave bruger vi bash's for loop kommandostruktur. Erstatte med et variabelt navn og med enten en kommando, der udsender en liste eller en eksplicit liste.

for in do command $;done

Du kan køre den på en enkelt linje med denne syntaks i stedet:

for in ;do command $;done

Så hvis du vil unrar en liste over filer, kan du bruge denne kommando. Du behøver ikke nødvendigvis citaterne, men det hjælper, når filnavnet har mellemrum eller noget lignende i dem.

for f in *.rar;do unrar e “$f”;done

Hvis du ønskede at bruge 7zip til at udtrække en liste over filer:

for f in *.001;do 7z e “$f”;done

Eller hvis du ønskede at udpakke en liste over filer:

for f in *.zip;do unzip “$f”;done

Du kunne endda kæde kommandoer sammen, hvis du ville. Hvis alle dine zip-filer f.eks. Indeholdt .txt-filer, og du ønskede at pakke dem ud og derefter flytte de udpakket filer til en anden mappe:

for f in *.zip;do unzip “$f”;done; for f in *.txt;do mv “$f” /myfolder/;done

Den bash shell er bare så utroligt kraftfuld ... dette tapper ikke engang strømmen, men det bør give dig en god ide om hvad der er muligt.

Top Tips:
Kommentarer: