Portál AbcLinuxu, 8. května 2025 02:40
Nedavno jsem rozbaloval velke mnozstvi archivu (jednalo se o cca 100 MB party). Pres graficke rozhrani (ubuntu/gnome) to byla "zabava" na desitky minut, nehlede na to, ze by to pri paraelnim rozbalovani vyrazne zpomalilo pocitac. Rozhodl jsem se proto vytvorit jednoduchy skript na automaticke rozbaleni.
#!/bin/bash find . -iname '*.part1.rar' | while read F; do unrar e "$F" done
#!/bin/bash find . -iname '*.part1.rar' | sort | while read F; do unrar e -o- "$F" doneSkript prochazi postupne slozku a hleda soubory s nazvem "*part1.rar", posila je utilite unrar, ktera je postupne rozbaluje.
Tiskni
Sdílej:
++
(Ani snad nemusí jít o 1. část.)
To "rozbalit sem" jsem delal puvodne, ale pri vetsim mnozstvi cca 300 ks by to byla prace na dlouho a navic by paraelni rozbalovani zpomalilo pc (vyzkouseno).
unrar x *.part1.rar
?
Skript je to jednoduchy, ale v pripade ze by adresarova struktura byla slozitejsi tak ten find by byl potreba. Navic s bashem zacinam tak jsem si cykly chtel otestovat otestovat na necem jednodusim.
Tak jsem koukal na parametry unrar-u a je tam i "r Recurse subdirectories" akorat mi neni jasne kam to pak rozbali jestli do tech podadresaru nebo do slozky kde je unrar spusten?
find -iname '*.part1.rar' -exec unrar e \{\}\;
je to urcite uspornejsi reseni, ale s mymi znalostmi me to nenapadlo. jinak nedokazi si treba predstavit jak potom do takovehoto prikazu zapudovat osetreni chyb typu: soubor existuje, pristup odepren ap.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.