Bash skriptování: smyčky pro automatizaci každodenních úloh

skriptování bash

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é ...


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Za data odpovídá: AB Internet Networks 2008 SL
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.