Bash scripting: sløyfer for å automatisere hverdagsjobber

bash skripting

Du har sikkert kommet over noen oppgaver du må gjøre gjentatte ganger. Tenk deg for eksempel at du har en katalog full av filer, og at du vil endre navnet på dem alle, eller at du trenger å komprimere flere filer eller dekomprimere dem, kanskje du må konvertere fra ett format til et annet, periodiske sikkerhetskopier, etc. Skript har løsninger for alt dette.

Disse oppgavene når de brukes på en enkelt fil i Bash er fine. Problemet er når du må bruke det på dusinvis av dem. Lekser kan være veldig irriterende. Med en enkel sløyfe eller sløyfe i Bash kan du bli kvitt det problemet og få en oppgave å kjøre gjentatte ganger for å automatisere det og ikke koste deg så mye arbeid. Måten å gjøre det på er superenkelt, men mange nye brukere gjør det ikke og ender opp med å gjøre oppgaven manuelt eller leter etter grafiske programmer som gjør det ...

For å gjøre dette, hold deg til denne strukturen:

for x in objetivo; do comando; done

av ejemploAnta at du vil slette filer som heter name0, name1, name2, name3, etc., opp til nummernavnet100. Å gå en etter en med rm ville være ganske kjedelig, i stedet kan du kjøre følgende kommando:

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

Eller kanskje forestill deg at du har en katalog med flere komprimerte .zip-filer du vil trekke ut. For å unngå å måtte gå en etter en kan du bruke:

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

Du endre disse bash-løkkene som du foretrekker å bruke verktøyet du trenger i ditt tilfelle. For eksempel, enda en, tenk deg nå at du vil pakke ut en tarball:

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

Jeg håper jeg har hjulpet ikke å kaste bort så mye tid på å gjøre alle disse oppgavene en etter en, og at du kan bruke dette for å effektivisere ditt daglige arbeid. Som du kan se, har det ikke noe mysterium, det er superenkelt ...


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.