Bashas: Kaip sukurti vykdomąjį scenarijų

Aš noriu po truputį dėti straipsnius BashNa, aš turiu pakankamai medžiagos, kad galėčiau išmokyti jus po truputį, kurti scenarijus ir daug daugiau, kad mūsų kasdienės užduotys būtų automatinės, taigi akivaizdu, kad tai sutaupys daug laiko 😀

Dabar aš jums parodysiu pagrindus, ką visada turėsite žinoti, ir tai man padės likusiose pamokose 😉

Kaip sukurti .sh scenarijų?

Paprasta ... labai paprasta 😀

1. Atidarykite terminalą, jame parašykite šiuos duomenis ir paspauskite [Įveskite]:

cd $HOME && touch script.sh && chmod +x script.sh

To pakaks sukurti failą jiems scenarijus.sh savo asmeninis aplankas.

2. Į terminalą įdėkite taip:

cd $HOME && echo '#!/bin/bash' > script.sh && echo '# -*- ENCODING: UTF-8 -*-' >> script.sh

3. Paruošta, jūsų scenarijus paruoštas 😀

Jei atidarysime, turėsime kažką panašaus:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-

Po tos antros eilutės iš ten rašomos instrukcijos.

Pavyzdžiui, mes jums liepsime parodyti mus terminale «<° „Linux“ yra geriausias»😀

Mes turėtume scenarijų taip:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-
echo "<° Linux es lo mejor"
exit

Kaip paleisti ar išbandyti .sh scenarijų?

1. Turime pereiti į aplanką, kuriame yra scenarijus, ankstesniame pavyzdyje tai būtų mūsų asmeninis aplankas, todėl atidarome terminalą, jame rašome šį tekstą ir paspaudžiame [Įveskite]:

cd $HOME

2. Dabar mes jį vykdome įdėdami tašką ir pasvirąjį brūkšnį (po jo) ir po scenarijaus pavadinimo, tai yra:

./script.sh

Ir bingo, mes jį jau turime 😀

Padaryk tai ir pamatysi ...

Dabar svarbi detalė, kurios pabaigoje jie visada turėtų įdėti «išeiti«

Na ir dabar, nieko daugiau nepridėkite, tiesiog palaukite būsimų pamokų, čia sužinosite bash HAHA.

saludos


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Oskaras sakė

    Ačiū draugei, man visada buvo įdomu, kaip sukurti script.sh, dabar atėjo laikas mokytis, lauksiu kitų pamokų.

    1.    KZKG ^ Gaara <"Linux sakė

      Ne, malonumas hehe 😀
      Pamatysite ... po truputį rengsiu „Bash“ pamokas, norėdamas sužinoti, ar kas nors jaudinasi, mokosi ir mes visi pagerėsime HAHA.

      saludos

      1.    Jose sakė

        Sveiki, man prireiktų jūsų pagalbos, jei galėtumėte man padėti kai kuriuos scenarijus, kuriuos įstrigau ir kuriuos turiu padaryti kuriai nors temai, norėčiau susisiekti su manimi.
        Labai ačiū iš anksto

  2.   pardo sakė

    Ak mirtingas !! puikus 😉

    1.    KZKG ^ Gaara <"Linux sakė

      Ačiū 😀
      Atminkite, kad skundai ar pasiūlymai visada bus gerai sutikti 😉

  3.   taregonas sakė

    Man patiko įrašas, kai man reikia scenarijaus antraštės, aš pradedu naršyti tik norėdamas rasti antraštėje eilutę: "#! / Bin / bash" (aš labai pamirštu). Dabar turėdamas šį indėlį galiu jį komentuoti ir tiesiog nukopijuoti ir įklijuoti 😀

    1.    KZKG ^ Gaara <"Linux sakė

      Atminkite, kad tai yra / bash ir / sh ... viskas kitaip haha, aš kartą praleidau 2 dienas kovodamas su scenarijumi, kuris man neveikė taip, kaip turėtų, ir taip buvo todėl, kad aš įdėjau sh vietoj bash 😀

      Bet kokie klausimai, kuriuos mums pateikiate.
      saludos

  4.   xfraniux sakė

    „Jaajajajajaja“ ir tai yra paprasčiausias variantas, taip pat galite atidaryti „gedit“ ar bet kurį redaktorių ir nukopijuoti:

    #!/bin/bash
    # -*- ENCODING: UTF-8 -*-
    echo “<° Linux es lo mejor”
    exit

    Tada mes suteikiame jam vykdymo leidimus ....

    labai geri duomenys .. sveikinimai

    1.    KZKG ^ Gaara <"Linux sakė

      hehe taip, tai galėjo būti padaryta taip, bet aš nežinau ... Aš maniau, kad paprasčiau būtų padaryti dviejų eilučių kopiją / įklijuoti (kuri gali būti viena iš tikrųjų) ir viskas, paruoškite scenarijų su vykdymo leidimais ir antrašte 😀

    2.    Bertholdousas sakė

      Sveiki. Ar scenarijai visada turėtų būti išsaugoti kaip .sh failas?

      „Windows“ panašūs būtų .bat failai. Kalbant apie jų rašymą, jie atrodo šiek tiek paprasčiau.

  5.   Lukas Matiasas sakė

    Labai gera che

    1.    KZKG ^ Gaara <"Linux sakė

      Ačiū 😀

  6.   artūras molina sakė

    Nekantriai laukiu kito įrašo ir kol kas atkreipsiu dėmesį.

    1.    KZKG ^ Gaara <"Linux sakė

      ????
      Turite kokių nors pasiūlymų, scenarijų, kurį norėčiau padaryti, ar pan. 😀

  7.   Drąsa sakė

    Ar tai tas, kuris nemoka programuoti? Nors tai lengva, bet tai yra programavimas

    1.    KZKG ^ Gaara <"Linux sakė

      HAHAHA ateik ... ar jūs jaudinatės? ... Išmok šiek tiek „Bash“, pamatysi, kaip puiku, nereikia žinoti, kaip programuoti, toli gražu ne 😀

      Ką tu sakai?

      1.    Drąsa sakė

        Aš padarysiu, šiandien aš ne tam

  8.   Anoniminis sakė

    Tiesą sakant, jei scenarijai bus kuriami reguliariai, pati užduotis taip pat gali būti automatizuota naudojant tokį scenarijų (jis nukopijuojamas tik į $ home / bin / ir suteikiami vykdymo leidimai)


    #!/bin/sh
    # nuevoscript
    if [ $# -eq 0]; then
    DEST=$HOME
    SNAME=script.sh
    elif [ $# -eq 1]; then
    DEST=.
    SNAME="$1"
    else
    echo "Parámetros incorrectos"
    exit -1
    fi
    echo -e '#!/bin/bash\n# -*- ENCODING: UTF-8 -*-' > "$DEST/$SNAME" && \
    chmod +x "$DEST/$SNAME"
    echo "Creado el script $DEST/$SNAME"
    exit 0

    Tokiu būdu, jei bėgsi naujas scenarijus be parametrų, sukurkite $ home / script.sh, bet jei jis veikia naujas scenarijus kitas scenarijus, kuria ./otherscript

  9.   Ramzis sakė

    Sveiki, drauge, norėčiau sužinoti, kaip aš galiu sukurti automatinį paleidimą SD kortelei ir kad ją skaitytų mano telefonas su tokiu androidu ir kad ją įvykdžius, aš paleisiu abd.exe ir komandą bugreport> bugreport.txt

    1.    KZKG ^ Gaara sakė

      Nėra idėjos draugo ... Aš niekada nenaudojau „Android“.

  10.   Neo61 sakė

    Ačiū gaara, norėjau rasti vietą, kur mane galėtų išmokyti scenarijų, manau, kad el. Laiške tai paminėjau tau, o tai tikrai reikia išmokti. Aš atlikau jūsų nurodytus veiksmus ir viskas yra tobula, bet ji neveikia, suprantu:

    ./script.sh: 5 eilutė: Netikėtas EOF ieškant atitikimo „»
    ./script.sh: 9 eilutė: sintaksinė klaida: failo pabaigos nebuvo tikėtasi

    Paaiškink man, kas yra mano suklydimas

    1.    KZKG ^ Gaara sakė

      Mano kaltė, „WordPress“ pakeičia kai kurias detales, dar kartą pažiūrėkite į įrašo kodą ir įdėkite jį taip į savo scenarijų.
      Atsitinka taip:

      „Asd“

      Tai nėra tas pats kaip:
      "asd"

  11.   Neo61 sakė

    Nesuprantu, vis tiek matau tą patį. Kur pokyčiai? Ar galėtumėte man paaiškinti geriau? Dabar, kai duodate jį vykdyti, išvedama ši eilutė:
    ./script.sh: 5 eilutė: °: Failo ar katalogo nėra

    1.    KZKG ^ Gaara sakė

      Perduokite scenarijų, kurį naudojate, įdėkite kodą čia: http://paste.desdelinux.net
      Pažvelkite į įrašą dar kartą, tai buvau pamiršęs spustelėti mygtuką „Atnaujinti“ 😀

  12.   Neo61 sakė

    Labas partneris:
    Aš jums pasakysiu, kad aš žiūrėjau į „conkyrc“ scenarijų, kurį sukūrėte savo „conky 2010“, ir taip, tiesa, disko simbolis priklauso šaltiniui, vadinamam „Poky“, tačiau jis pagal nutylėjimą nėra „libreOffice“, esantis „Ubuntu 12.04“, būtų gerai, jei turite šį šaltinį , pasakyk man, iš kur galiu jį atsisiųsti (tikrai šiek tiek sunku), supratau, kad kai dedamos šių simbolių raidės ir sistemoje neegzistuoja šriftas, tada dedama raidė, o ne simbolis, Tai logiška, aš jau gaunu idėją, kaip viskas veikia, bet man reikia, kad kas nors paaiškintų man dalykus, kad geriau suprasčiau, viskas, ką darau, yra išskaičiavimas ir niekada nedaviau jokio programavimo, tai nebuvo tai, ko studijavau Be to, tai buvo kitas laikas, turiu kompiuterį kaip pomėgį ir gerai tai, kad dirbu vienoje iš jos šakų, viskas, ko išmokau, buvo savamokslė, todėl mano susidomėjimas žmogumi, kuris net po truputį, Vesk mane. čia taip pat yra mano „conky“ scenarijus ir aš paaiškinsiu, ko negaunu:

    Žiūrėk, kai bandau įdėti kitą HDD, vis tiek gaunu tą patį, nes jis suteikia tą pačią temperatūros vertę. Sistemoje negaunu procesoriaus charakteristikų, ji paryškinta (NULL), kai bandau įterpti kalendorių, kurį įdėjote į „Conky“, kad 2010 m. Pažvelkite į visus patobulinimus, kuriuos galite atlikti. Man patinka toks platus, kokį turiu, ir kad jūsų kalendorius prisitaiko prie to pločio ir kad viskas, ką jums sakiau, bet nėra rodoma, išeina:

    http://paste.desdelinux.net/4552

    –Įdėkite kodą į mūsų pastą, todėl komentarai nėra tokie išsamūs -

  13.   GONZALO sakė

    tiesa ta, kad jūsų indėlis yra apgailėtinas

  14.   edgar sakė

    Sveiki, jūs palengvinote mano gyvenimą naudodami šį scenarijų. Labai ačiū, kad norėčiau sužinoti, ar galėtumėte atsiųsti man el. Laišką, kur aprašote, nes programavimo srityje esu nevo.
    Ačiū

    1.    KZKG ^ Gaara sakė

      Sveiki,
      Geriau aš negalėjau apibūdinti / paaiškinti šių kodo eilučių, ko nesupratote paaiškinti kitu būdu?

      Galbūt, jei turite klausimų, visada galite užduoti mūsų forume: forume.desdelinux. Grynasis

      Sveikinimai 😀

  15.   Nustoti sakė

    Puikus indėlis, bet galėtumėte jį suapvalinti ... Man reikia „sai“ scenarijaus. Tai yra, kai Sai supranta, kad jis turi akumuliatorių ir turi 20 minučių išjungti, jis siunčia signalą į įrenginį, kuris turi įvykdyti scenarijų, kad išjungtų kai kuriuos serverius. Nežinau, ar gerai sau paaiškinau ... Valdria, įdėjus tavo scenarijų „shutdown -h“ ??

    Thank you!

  16.   Jėzus Izraelis Peralesas Martinezas sakė

    Kažką dar pridėti prie mano šablonų aplanko: B

  17.   edvaras sakė

    Ar kas nors galėtų man padėti, man reikia „ubuntu“ scenarijaus, kurį uždarius „Chrome“ naršyklę, atidarykite dar kartą

    Ačiū iš anksto

  18.   Edo sakė

    Man reikia scenarijaus, kuris tik jį vykdydamas perrašys failo informaciją su kitu tekstu, ar kas nors žino, kaip yra?

    1.    Edo sakė

      Jau mačiau, kad aukščiau jie sako, kaip tai padaryti

  19.   Dario sakė

    Labai gerai, puikiai tinka mano anūkams.
    Tūkstantis padėkų. »Kaip ir jūs turėjote daug jaunų žmonių, veikdami kaip mokytojai ... būtų nuostabu.

  20.   Romos PC sakė

    Paprasta ir funkcionalu, kaip ir turėtų būti.

    Ačiū už dalinimąsi.

    Sveikinimai.

  21.   Hernanas Jaramillo sakė

    Ačiū už jūsų pagalbą. Tai buvo naudinga, labai geras paaiškinimas.

  22.   vicene sakė

    Ačiū, kad man tai padėjo. Cheers

  23.   Gamerzas sakė

    Paprasta ir efektyvu. Puiki pamoka naujiems 🙂

  24.   Luisas Carlosas sakė

    Sveiki, aš labai mažai žinau apie scenarijus ir nežinau, ar nesuprantu sąvokų, bet ką bandau padaryti, yra šiame tinklalapyje:
    http://beginlinux.com/blog/2010/03/iptables-with-network-card-aliases/

    Esmė ta, kad nelabai suprantu, kaip paleisti šį kodą, ar jei jis pakeičia IPTABLES. Ir jei jis pakeis jį taip, kaip būtų, kad jis automatiškai prasidėtų nuo OS.

    Ačiū

  25.   cris sakė

    Puiki Gaara !!!

    Aš pradėjau daryti namų darbus, kaip jūs paaiškinote, ir tai pavyko! Ačiū, kad skyrėte laiko ir pasidalijote su nežinančiaisiais, kad išeitumėte iš tamsos.

    ????

  26.   Liūtas sakė

    Sveiki, turiu klausimų, kaip sukurti scenarijų, kurį sukuria vartotojas. Ar galėtumėte man padėti?

  27.   Giovani sakė

    labas, turiu klausimą su .sh failu
    ar turite kokiu nors tokiu budu
    Aš susisiekiau su jumis, norėdamas sužinoti, ar aš tai darau teisingai?

    #! / system / bin / sh
    mount -o perstatymas, rw /
    mkdir /mnt/local/Android/data/org.xbmc.xbmc/files/.xbmc
    ln -s /mnt/local/Android/data/org.xbmc.xbmc/files/.xbmc /.xbmc
    mount -o perstatymas, ro /

    , Paleidžiu jį rankiniu būdu terminale ir, jei jis veikia, bet kai noriu, kad failas būtų paleistas, jis to nenori.

  28.   Louis sakė

    Šį radau vivaolinux.com.br, tai puiku

    #! / bin / bash

    Remiantis Gera.sh - „Gera cabeçalho“ scenarijams

    Parašė Sandro Marcellas P. Barbosa („Boa Vista“ - „Roraima“)

    El. paštas: sandro_marcell@yahoo.com.br

    „Slackware GNU / Linux 10.1.0“

    Naudojimo pavyzdys: scenarijaus_vardas mano_skriptas

    Taip pat galite nurodyti plėtinį, atitikimą ar vertėją.

    Pvz .: „nome_script backup.sh“ vertėjui „sh“

    arba „nome_script backup.tcl“ vertėjui „tcl“ ir dienai!

    Apibrėždami vertėją galite (pakeiskite kitą!):

    Vertėjas = »#! / Šiukšliadėžė»

    Antraštės turinys (keiskite, kaip jums patinka!):

    INFO = »##»
    CREATOR = »## Parašė:»
    EMAIL = »## El. Paštas: you@correo.com»
    DISTRO = »##»

    Tikrinama, ar vartotojas nurodė scenarijaus pavadinimą:

    jei [$ # -eq 0]; tada
    echo ">>> Naudojimas: $ (bazinis vardas $ 0)"
    išeiti
    fi
    jei [$ # -ge 2]; tada
    aidas "Vardas su tarpais negalioja!"
    išeiti
    fi

    Ar vartotojas gali rašyti į esamą katalogą?

    jei [! -w $ PWD]; tada
    echo "Nėra leidimo rašyti dabartinį katalogą!"
    išeiti
    fi

    Ką daryti, jei dabartiniame kataloge yra kitas scenarijus tuo pačiu pavadinimu?

    jei [-f $ 1]; tada
    echo "Šiame kataloge jau yra scenarijus tuo pačiu pavadinimu!"
    išeiti
    fi

    Scenarijaus turinys:

    (
    katė << PABAIGA
    $ TULKAS

    $ INFO
    $ KŪRĖJAS
    $ EMAIL
    $ DISTRO

    Dabar pridėkite komandas kitose eilutėse =)

    Šio scenarijaus sukūrimo data: $ (data «+% a% d /% m /% Y») prie $ (data «+% T»)

    FIN
    )> 1 USD

    Vykdymo leidimo nustatymas:

    jei [-f $ 1]; tada
    chmod + x $ 1 2> / dev / stdout
    echo "Scenarijus $ 1 sukurtas ir leista jį vykdyti!"
    fi

    Šio scenarijaus sukūrimo data: 29-01-2013 19:45:00

    1.    Debianistrowleris sakė

      Puiku, jis puikiai veikia !!!

  29.   Vicente sakė

    Labai gera pamoka, paprasta ir ji man labai padėjo, ačiū

  30.   calichi sakė

    Gerbiamasis KZKG, aš esu naujokas, bet man įdomu mokytis.
    Jūs turite kitą scenarijų. Arba staiga toje vietoje, kur aš dirbu, noriu atidaryti kompiliaciją, kurios nematau.
    Kokiu nors ideju.

  31.   calichi sakė

    Man reikia pagalbos dėl scenarijaus. Jis yra sudarytas.

  32.   cool9 sakė

    Aš supratau apie „bash“, bet jei noriu sukurti automatizuotą slapyvardį, jis neišeina

  33.   angiesaritas sakė

    Labai ačiū už pagalbos draugą.

    Norėčiau sužinoti, ar galite padaryti man didžiulę paslaugą, turiu sukurti scenarijų, kuris tam tikru metu padėtų sukurti .sum, bet nežinau, kaip jį parametruoti. Galbūt galite man padėti kai kuriais patarimais. Ačiū ir būsiu dėmesingas, jei galėsi man padėti.

    saludos

  34.   José sakė

    Sveiki, labadienis, žiūrėk, aš dirbu leksą, todėl norėčiau, jei galėtumėte man padėti su scenarijumi, kuriuo galėčiau paleisti lex failą, tą, kuris generuoja lex (lex.yy.c) ir duomenų įvesties failą .

    Labai ačiū

  35.   Wilmeris Ronis sakė

    krištos ačiū doc !!! Aš esu scenarijaus naujokas, ačiū jums nuoširdžiai linkėjimai, aš ieškosiu jūsų naujojo vadovavimo !!!!

  36.   Karen vega sakė

    Sveiki!!!

    Labai ačiū už jūsų indėlį, aš pradedu patekti į „unix“ ir retai kas nors taip paprastai paaiškina šią kodo visatą. Norėčiau jūsų paklausti, ar atlikdamas jūsų procedūrą galiu sukurti scenarijų, kuris padėtų man rasti n skaičių failų, kurie gyvena tame pačiame kelyje, ir kad aš juos nukopijuočiau į kitą aplanką ... kažkas man pasakė, kad aš galiu txt išsaugoti kelią ir pavadinimą mano failus, bet man neaišku, kaip tai padaryti. Aš lieku dėmesingas.

    Sveiki atvykę!

  37.   Eibaras Amaya sakė

    Sveiki, aš turiu VPS, bet man reikia pagalbos dėl kai kurių dalykų, orita, aš pats domiuosi, kaip sukurti scenarijų ar ką nors, kad paleisčiau atsarginę visko, kas yra mano / šakniniame aplanke, ir kad atsarginė kopija būtų vykdoma kas 1 valandą, jei aš gal galetumete padeti tame, kad as tave per daug vertinu

    Aš palieku jums savo „Facebook“, jei norite man padėti, man reikia daug pagalbos 🙂

  38.   Jorge'as Rodriguezas sakė

    sukurkite man vieną, kad galėčiau pinguoti ir stebėti tam tikrą įmonės tinklo įrangą
    bet aš padariau tai paprasta

    palieskite raudoną.sh && chmod + x raudoną.sh
    išmetė '# -- KODAVIMAS: UTF-8 -- '>> red.sh
    echo 'ping 10.50.0.125 -w 5' >> raudonas.sh
    echo 'ping 10.50.0.80 -w 5' >> raudonas.sh

    paleisk jį ./red.sh ir gerai

  39.   Guillermo sakė

    Mielasis, man reikia sukurti automatinį diegimo scenarijų. Esu pasirengęs mokėti už gerai atliktą darbą. Tie, kurie domisi, atsiųskite man el carranzalh@gmail.com. Ačiū

  40.   Ari sakė

    jie čiulpia mano gaidį XD

  41.   hdexz sakė

    Labas rytas drauge, ar galėtum man kuo nors padėti
    Turiu padaryti atsarginę kopiją su „Linux“ kompanija, nes ji yra saugesnė, kad virusai jos nepagautų, bet aš nežinau, kaip jas padaryti
    Turiu sukurti scenarijų, kuris pakuos failus ir nusiųs juos į ftp

    Būčiau dėkinga iš anksto parašyti į savo elektroninį paštą

    cesarloscor@gmail.com