Shkrimet Bash: sythe për të automatizuar punët e përditshme

skenari bash

Ju me siguri keni ardhur të gjithë disa detyra që duhet t'i bëni në mënyrë të përsëritur. Për shembull, imagjinoni që keni një direktori të plotë me skedarë dhe dëshironi të ndryshoni emrin e të gjithë atyre, ose që duhet të kompresoni disa skedarë ose t'i dekompresoni ato, ndoshta duhet të ktheni nga një format në tjetrin, rezervime periodike, etj. Skenaret kanë zgjidhje për të gjitha këto.

Këto detyra kur zbatohen në një skedar të vetëm në Bash janë në rregull. Problemi është kur duhet ta zbatoni në dhjetëra prej tyre. Detyrat e shtëpisë mund të jenë shumë të bezdisshme. Me një lak ose lak të thjeshtë në Bash ju mund të shpëtoni nga ai problem dhe të keni një detyrë të ekzekutuar në mënyrë të përsëritur për ta automatizuar atë dhe mos t'ju kushtojë aq shumë punë. Mënyra për ta bërë atë është shumë e thjeshtë, por shumë përdorues të rinj nuk e bëjnë atë dhe përfundojnë duke bërë detyrën manualisht ose duke kërkuar programe grafike që e bëjnë atë ...

Për ta bërë këtë, rrinë me këtë strukturë:

for x in objetivo; do comando; done

Por EjemploSupozoni se dëshironi të fshini skedarët me emrin name0, name1, name2, name3, etj., Deri në numrin name100. Të shkosh një nga një me rm do të ishte mjaft e lodhshme, përkundrazi, mund të ekzekutosh komandën e mëposhtme:

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

Ose mbase imagjinoni që keni një direktori me disa skedarë .zip të kompresuar që dëshironi të nxjerrni. Për të shmangur nevojën për të shkuar një nga një mund të përdorni:

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

Ju mundeni ndryshoni këto sythe bash pasi preferoni të përdorni mjetin që ju nevojitet në rastin tuaj. Për shembull, edhe një tjetër, tani imagjinoni se doni të shpaketoni një tarball:

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

Shpresoj se kam ndihmuar për të mos humbur aq shumë kohë duke bërë të gjitha ato detyra një nga një dhe që mund ta zbatoni këtë për të rregulluar punën tuaj të përditshme. Siç mund ta shihni, nuk ka asnjë mister, është shumë e thjeshtë ...


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.