Určitě jste narazili některé úkoly, které musíte dělat opakovaně. Představte si například, že máte adresář plný souborů a chcete je všechny přejmenovat, nebo že potřebujete komprimovat několik souborů nebo je dekomprimovat, možná budete muset převést z jednoho formátu do jiného, pravidelné zálohy atd. Skripty mají pro toto všechno řešení.
Tyto úkoly při použití na jeden soubor v Bash jsou v pořádku. Problém je, když to musíte aplikovat na desítky z nich. Domácí úkoly mohou být velmi nepříjemné. Jednoduchou smyčkou nebo smyčkou v Bashi se můžete tohoto problému zbavit a nechat si opakovaně spouštět úkoly, které je automatizují a nestojí vás tolik práce. Způsob, jak to udělat, je velmi jednoduchý, ale mnoho nových uživatelů to nedělá a nakonec úkol udělá ručně nebo hledá grafické programy, které to dělají ...
Za tímto účelem držet se této struktury:
for x in objetivo; do comando; done
Por ejemploPředpokládejme, že chcete smazat soubory s názvem name0, name1, name2, name3 atd., A to až do počtu name100. Přejít jeden po druhém s rm by bylo docela zdlouhavé, místo toho můžete spustit následující příkaz:
for n in 'seq 100'; do rm nombre$n; done
Nebo si možná představte, že máte adresář s několika komprimovanými soubory ZIP, které chcete extrahovat. Chcete-li se vyhnout tomu, abyste museli postupovat jeden po druhém, můžete použít:
</pre> <pre>for n in *.zip; do unzip "$n"; done
Vy změňte tyto bash smyčky protože dáváte přednost použití nástroje, který ve svém případě potřebujete. Například ještě další, nyní si představte, že chcete rozbalit tarball:
</pre> <pre>for n in *.tar.xz; do tar -xf "$n"; done</pre> <pre>
Doufám, že jsem vám pomohl neztrácejte tolik času prováděním všech těchto úkolů jeden po druhém a že to můžete použít k zefektivnění své každodenní práce. Jak vidíte, nemá to žádné tajemství, je to super jednoduché ...