Kindlasti olete kokku puutunud mõned ülesanded, mida peate korduvalt tegema. Kujutage näiteks ette, et teil on kataloog täis faile ja soovite kõigi nende nime muuta või peate mitu faili tihendama või lahti pakkima, võib-olla peate teisendama ühest vormingust teise, perioodilised varukoopiad, jne. Skriptidel on selle kõige jaoks lahendused.
Need ülesanded, kui neid rakendatakse ühele failile Bashis, on korras. Probleem on siis, kui peate seda rakendama kümnetele neist. Kodutööd võivad olla väga tüütud. Bashi lihtsa tsükli või silmusega saate sellest probleemist lahti saada ja lasta selle automatiseerimiseks korduvalt käivitada ülesanne, mis ei maksaks teile nii palju tööd. Selle tegemise viis on ülilihtne, kuid paljud uued kasutajad seda ei tee ja lõpuks teevad selle ülesande käsitsi või otsivad graafilisi programme, mis seda teevad ...
Selleks selle struktuuriga kinni:
for x in objetivo; do comando; done
Por ejemploOletame, et soovite kustutada failid nimega name0, name1, name2, name3 jne kuni numbri name100. Rm-iga ükshaaval liikumine oleks üsna tüütu, selle asemel võite käivitada järgmise käsu:
for n in 'seq 100'; do rm nombre$n; done
Või võib-olla kujutate ette, et teil on mitu tihendatud .zip-failiga kataloog, mille soovite ekstraktida. Et vältida ükshaaval käimist, võite kasutada järgmist.
</pre> <pre>for n in *.zip; do unzip "$n"; done
Te neid bash-silmuseid muuta kui eelistate kasutada teie jaoks vajalikku tööriista. Näiteks veel üks, kujutlege nüüd, et soovite tarballi lahti pakkida:
</pre> <pre>for n in *.tar.xz; do tar -xf "$n"; done</pre> <pre>
Loodan, et olen aidanud mitte raisata nii palju aega kõigi nende ülesannete ükshaaval tegemisele ja seda saate kasutada oma igapäevase töö sujuvamaks muutmiseks. Nagu näete, pole sellel mingit saladust, see on ülilihtne ...