Bash-scripting: sløjfer til automatisering af hverdagsjobs

bash-scripting

Du er helt sikkert stødt på nogle opgaver, som du skal udføre gentagne gange. Forestil dig for eksempel, at du har en mappe fuld af filer, og at du vil ændre navnet på dem alle, eller at du skal komprimere flere filer eller dekomprimere dem, måske skal du konvertere fra et format til et andet, periodiske sikkerhedskopier, etc. Scripts har løsninger til alt dette.

Disse opgaver, når de anvendes på en enkelt fil i Bash, er fine. Problemet er, når du skal anvende det på snesevis af dem. Hjemmearbejde kan være meget irriterende. Med en simpel sløjfe eller sløjfe i Bash kan du slippe af med dette problem og få en opgave kørt gentagne gange for at automatisere det og ikke koste dig så meget arbejde. Måden at gøre det på er super enkel, men mange nye brugere gør det ikke og ender med at udføre opgaven manuelt eller på udkig efter grafiske programmer, der gør det ...

Til dette hold dig til denne struktur:

for x in objetivo; do comando; done

Ved ejemploAntag at du vil slette filer med navnet name0, name1, name2, name3 osv. Op til nummernavnet100. At gå en efter en med rm ville være ret kedeligt, i stedet kan du køre følgende kommando:

for n in 'seq 100'; do rm nombre$n; done

Eller forestil dig måske, at du har en mappe med flere komprimerede .zip-filer, som du vil udpakke. For at undgå at skulle gå en efter en kan du bruge:

</pre>
<pre>for n in *.zip; do unzip "$n"; done

Du ændre disse bash-sløjfer som du foretrækker at bruge det værktøj, du har brug for i dit tilfælde. For eksempel endnu en, forestil dig nu, at du vil pakke en tarball ud:

</pre>
<pre>for n in *.tar.xz; do tar -xf "$n"; done</pre>
<pre>

Jeg håber, jeg har hjulpet ikke at spilde så meget tid på at udføre alle disse opgaver en efter en, og at du kan anvende dette til at strømline dit daglige arbejde. Som du kan se, har det intet mysterium, det er super simpelt ...


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.