Bash: Hur man skapar ett körbart skript

Jag vill lite efter lite lägga artiklar på BashNåväl, jag har tillräckligt med material för att lära dig lite efter lite tips, göra manus och mycket mer, så att våra dagliga uppgifter är automatiska, så det sparar självklart mycket tid obviously

Nu ska jag visa dig grunderna, vad du alltid kommer att behöva veta, och det kommer att hjälpa mig under resten av handledningarna 😉

Hur man skapar ett .sh-skript?

Enkelt ... väldigt enkelt 😀

1. Öppna en terminal, skriv följande och tryck på den [Stiga på]:

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

Detta räcker för att skapa en fil för dem script.sh i hans personlig mapp.

2. I terminalen sätter du följande:

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

3. Klar, du har ditt skript klart 😀

Om vi ​​öppnar den kommer vi att ha något liknande:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-

Efter den andra raden skrivs instruktionerna därifrån.

Vi säger till exempel att du ska visa oss i en terminal «<° Linux är bäst»😀

Vi skulle ha manuset enligt följande:
#!/bin/bash
# -*- ENCODING: UTF-8 -*-
echo "<° Linux es lo mejor"
exit

Hur kör jag eller testar ett .sh-skript?

1. Vi måste gå till mappen där skriptet är, i föregående exempel skulle det vara vår personliga mapp, så vi öppnar en terminal, i den skriver vi följande och trycker på [Stiga på]:

cd $HOME

2. Nu kör vi det genom att sätta en punkt och ett snedstreck (följt) och följt av skriptets namn, det vill säga:

./script.sh

Och bingo, vi har det redan 😀

Gör det så ser du ...

Nu en viktig detalj, i slutet bör de alltid sätta «avsluta«

Och nu, inget mer att lägga till, vänta bara på framtida handledning, här lär du dig bash HAHA.

hälsningar


Innehållet i artikeln följer våra principer om redaktionell etik. Klicka på för att rapportera ett fel här.

57 kommentarer, lämna din

Lämna din kommentar

Din e-postadress kommer inte att publiceras.

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   oscar sade

    Tack vän, jag var alltid nyfiken på hur man skapar ett manus.sh, nu är det dags att lära sig, jag väntar på nästa handledning.

    1.    KZKG ^ Gaara <"Linux sade

      Nej, ett nöje hehe 😀
      Du kommer att se ... lite efter lite lägger jag in Bash-självstudier, för att se om någon blir upphetsad, lär sig och vi alla blir bättre HAHA.

      hälsningar

      1.    jose sade

        Hej, jag skulle behöva din hjälp om du kan hjälpa mig med några skript som jag har fastnat och jag behöver göra för ett ämne, jag skulle gärna vilja kontakta mig.
        Tack så mycket i förväg

  2.   brun sade

    Ah dödlig !! jättebra 😉

    1.    KZKG ^ Gaara <"Linux sade

      Tack 😀
      Kom ihåg att klagomål eller förslag alltid kommer att tas emot väl 😉

  3.   taregon sade

    Jag gillade inlägget, när jag behöver ett skriptrubrik börjar jag bara navigera för att hitta raden: "#! / Bin / bash" i rubriken (jag är mycket glömsk). Nu med detta bidrag kan jag få det antecknat och bara kopiera och klistra in 😀

    1.    KZKG ^ Gaara <"Linux sade

      Kom ihåg att det är / bash och / sh ... det är annorlunda haha, jag tillbringade en gång 2 dagar med att kämpa med ett skript som inte fungerade för mig som det borde, och det var för att jag satte sh istället för bash 😀

      Eventuella frågor du berättar för oss.
      hälsningar

  4.   xfraniux sade

    Jaajajajajaja och det här är det enklaste, du kan också öppna gedit eller någon redaktör och kopiera:

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

    Och sedan ger vi det exekveringsbehörigheter ....

    mycket bra data .. hälsningar

    1.    KZKG ^ Gaara <"Linux sade

      hehe ja, det kunde ha gjorts så här, men jag vet inte ... Jag trodde att det skulle vara enklare att göra en kopia / klistra in två rader (som faktiskt kan vara en) och det är det, redo manuset med exekveringsbehörigheter och rubriken 😀

    2.    Bertholdous sade

      Hej. Bör skript alltid sparas som en .sh-fil?

      I Windows är det liknande .bat-filerna. Och när det gäller deras skrivande ser de lite enklare ut.

  5.   Lucas Matthias sade

    Mycket bra che

    1.    KZKG ^ Gaara <"Linux sade

      Tack 😀

  6.   arthur molina sade

    Jag ser fram emot nästa inlägg och för tillfället noterar jag.

    1.    KZKG ^ Gaara <"Linux sade

      😉
      Några förslag, manus du vill att jag ska göra eller något? 😀

  7.   Mod sade

    Är det den som inte vet hur man programmerar? Även om det är enkelt är det programmering

    1.    KZKG ^ Gaara <"Linux sade

      HAHAHA kom igen ... är du upphetsad? ... lära dig lite Bash, du kommer att se hur bra det är, du behöver inte veta hur man programmerar, långt ifrån det 😀

      Vad säger du?

      1.    Mod sade

        Det gör jag, idag är jag inte för det

  8.   anonym sade

    Faktum är att om skript ska skapas regelbundet, kan själva uppgiften också automatiseras med ett skript som följande (det kopieras bara till $ home / bin / och ges exekveringsbehörigheter)


    #!/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

    På det här sättet, om du springer nytt manus utan parametrar, skapa $ home / script.sh, men om det går nytt manus annat manus, skapar ./anderskrift

  9.   Ramses sade

    Hej vän, jag skulle vilja veta hur jag kan skapa en autorun för ett SD-kort och att det läses av min telefon med så android och att när det körs startar jag abd.exe plus kommandot bugreport> bugreport.txt

    1.    KZKG ^ Gaara sade

      Ingen aning vän ... Jag har aldrig använt Android.

  10.   Neo61 sade

    Tack gaara, jag ville hitta en plats där jag kunde lära mig några manus, jag tror att i ett e-postmeddelande nämnde jag detta för dig, vilket verkligen är något jag behöver lära mig. Jag följde stegen du beskriver och allt är perfekt men det går inte, jag förstår det här:

    ./script.sh: rad 5: Oväntad EOF när du söker efter en matchande "» "
    ./script.sh: rad 9: syntaktiskt fel: filens slut förväntades inte

    Förklara för mig vad mitt misstag är

    1.    KZKG ^ Gaara sade

      Mitt fel, WordPress ändrar några detaljer, titta igen på koden i inlägget och lägg det så här i ditt manus.
      Vad som händer är att:

      "Asd"

      Det är inte samma sak som:
      "asd"

  11.   Neo61 sade

    Jag förstår inte, jag ser det fortfarande detsamma. Var är förändringen? Kan du förklara mig bättre? Nu när du ger den kör kommer den här raden ut:
    ./script.sh: rad 5: °: Filen eller katalogen finns inte

    1.    KZKG ^ Gaara sade

      Ge mig skriptet du kör, lägg in koden här: http://paste.desdelinux.net
      Titta på inlägget igen, det är att jag har glömt att klicka på knappen Uppdatera 😀

  12.   Neo61 sade

    Hej partner:
    Jag kommer att berätta att jag tittade på conkyrc-skriptet som du skapade för din conky 2010 och om det är sant, skivsymbolen tillhör en källa som heter Poky men den kommer inte som standard i libreOffice i Ubuntu 12.04, det skulle vara bra om du har den här källan , berätta var jag kan ladda ner den från (något svårt, egentligen), en sak som jag har märkt är att när bokstäverna i dessa symboler sätts och teckensnittet inte finns i systemet, sätter det bokstaven, inte symbolen, Det är logiskt, jag får redan en uppfattning om hur allt fungerar, men jag behöver någon som förklarar saker för mig för att förstå det bättre, allt jag gör är genom avdrag och jag har aldrig gett någon programmering, det var inte datavetenskap vad jag studerade Och också, det var en annan gång, jag har dator som en hobby och det goda är att jag arbetar i en av dess grenar, allt jag har lärt mig har varit självlärd, så mitt intresse för någon som, till och med lite efter lite, Led mig. här är också min conky manus och jag ska förklara vad jag inte får:

    Titta, när jag försöker sätta in en annan hårddisk får jag fortfarande samma eftersom den ger samma temperaturvärde. Jag får inte CPU-egenskaperna i systemet, det kommer ut (NULL) i fetstil när jag försöker infoga kalendern som du lägger i Conky att tanias 2010 är oorganiserat och vidgar conky-fältet. Se för att se alla förbättringar du kan göra. Jag gillar det med den bredd som jag har och att din kalender anpassar sig till den bredden och att allt jag sa till dig som inte visas kommer här:

    http://paste.desdelinux.net/4552

    –Sätt koden i vår pasta, så att kommentarerna inte är så omfattande–

  13.   GONZALOS sade

    sanningen är att ditt bidrag är beklagligt

  14.   edgar sade

    Hej, du har gjort mitt liv enklare med det här skriptet. Tack så mycket för att jag skulle vilja veta om du kan skicka ett mejl till mig där du beskriver det eftersom jag är ny programmering.
    tack

    1.    KZKG ^ Gaara sade

      Hej,
      Bättre Jag har inte kunnat beskriva / förklara dessa kodrader, vad har du inte förstått att förklara på ett annat sätt?

      På samma sätt kan du alltid ställa frågor i vårt forum: forum.desdelinux.net om du har frågor

      Hälsningar 😀

  15.   upphör sade

    Bra bidrag men du kan avrunda det ... Jag behöver ett manus för en sai. Det vill säga när Sai inser att det är på batteri och har 20 minuter att stänga av, skickar det en signal till en enhet och som måste köra skriptet för att stänga av vissa servrar. Jag vet inte om jag har förklarat mig bra ... Valdria med att sätta in ditt manus «avstängning -h» ??

    Tack!

  16.   Jesus Israel Perales Martinez sade

    Något annat att lägga till i min mallmapp: B

  17.   Edwar sade

    Kan någon hjälpa mig? Jag behöver ett skript för ubuntu som om vi stänger Chrome-webbläsaren, öppnar den igen

    tack på förhand

  18.   edo sade

    Jag behöver ett skript som bara genom att köra det kommer att skriva över informationen i en fil med en annan text, vet någon hur det är?

    1.    edo sade

      Jag har redan sett att ovanför säger de hur man gör det

  19.   Dario sade

    Mycket bra, utmärkt för mina barnbarn.
    Tusen tack. »Förutom att du hade många unga människor, fungerade du som lärare ... det skulle vara underbart.

  20.   Romersk PC sade

    Enkelt och funktionellt, som det borde vara.

    Tack för att dela.

    Hälsningar.

  21.   Hernan Jaramillo sade

    Tack för hjälpen. Det var användbart, mycket bra förklaring.

  22.   vicene sade

    Tack, det tjänade mig. Skål

  23.   Gamerz sade

    Enkelt och effektivt. Bra handledning för de nya 🙂

  24.   Luis Carlos sade

    Hej, jag vet väldigt lite om skript och jag vet inte om jag förvirrar begrepp, men det jag försöker göra finns på följande webbsida:
    http://beginlinux.com/blog/2010/03/iptables-with-network-card-aliases/

    Poängen är att jag inte riktigt förstår hur man startar den här koden eller om den ersätter IPTABLES. Och om det är att det ersätter det som det skulle ställas så att det startar automatiskt med operativsystemet.

    tack

  25.   Cris sade

    Fantastiskt Gaara !!!

    Jag började göra läxorna som du förklarade och det fungerade !! Tack för att du tog dig tid och delade din kunskap om att komma ut ur mörkret med de okunniga.

    😉

  26.   leo sade

    Hej, jag har några frågor för att skapa ett skript som en användare skapar, kan du hjälpa mig?

  27.   ung sade

    hej jag har en fråga med en .sh-fil
    har du något sätt att
    Jag kontaktade dig för att se om jag gör det rätt?

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

    , Jag kör den manuellt i terminalen och om den fungerar, men när jag vill att filen ska köras vill den inte.

  28.   louis sade

    Jag hittade den här på vivaolinux.com.br, den är jättebra

    #! / Bin / bash

    Baserat på Gera.sh - Gera cabeçalho för manus

    Skriven av: Sandro Marcell P. Barbosa (Boa Vista - Roraima)

    E-post: sandro_marcell@yahoo.com.br

    Slackware GNU / Linux 10.1.0

    Användningsexempel: skriptnamn mitt_skript

    Du kan också ange förlängning, överensstämmelse eller tolk.

    Exempel: nome_script backup.sh för tolk 'sh'

    ou nome_script backup.tcl för 'tcl' tolk och även för dagen!

    Definiera tolk som du kan (ersätta en annan!):

    TOLK = »#! / Bin / sh»

    Rubrikinnehåll (ändra som du vill!):

    INFO = »##»
    SKAPARE = ​​»## Skriven av:»
    EMAIL = »## E-post: you@correo.com»
    DISTRO = »##»

    Kontrollerar om användaren angav skriptnamnet:

    om [$ # -eq 0]; sedan
    eko ">>> Användning: $ (basnamn $ 0)"
    avsluta
    fi
    om [$ # -ge 2]; sedan
    eko "Namn med mellanslag är inte giltigt!"
    avsluta
    fi

    Kan användaren skriva till den aktuella katalogen?

    om [! -w $ PWD]; sedan
    eko "Ingen behörighet att skriva aktuell katalog!"
    avsluta
    fi

    Vad händer om det finns ett annat skript med samma namn i den aktuella katalogen?

    om [-f $ 1]; sedan
    echo "Det finns redan ett skript med samma namn i den här katalogen!"
    avsluta
    fi

    Skripttext:

    (
    katt << SLUT
    $ TOLKARE

    $ INFO
    $ CREATOR
    $ EMAIL
    $ DISTRO

    Lägg nu till kommandon i efterföljande rader =)

    Skapningsdatum för detta skript: $ (datum «+% a% d /% m /% Y») vid $ (datum «+% T»)

    FENA
    )> $ 1

    Ställa in exekveringsbehörighet:

    om [-f $ 1]; sedan
    chmod + x $ 1 2> / dev / stdout
    echo "Skript $ 1 skapades och fick köra!"
    fi

    Skapningsdatum för detta manus: 29-01-2013 19:45:00

    1.    debianistrowler sade

      Bra, det fungerar perfekt !!!

  29.   Vicente sade

    Mycket bra handledning, enkelt och det har hjälpt mig mycket, tack

  30.   calichi sade

    Kära KZKG Jag är nybörjare, men jag är intresserad av att lära mig.
    Du har ett annat skript. Eller plötsligt på den plats där jag arbetar vill jag öppna en som är sammanställd och jag kan inte se den.
    Några idéer.

  31.   calichi sade

    Jag behöver hjälp med ett manus. Det är sammanställt.

  32.   cool9 sade

    Jag förstod om bash, men om jag vill skapa ett automatiserat alias kommer det inte ut

  33.   angiesarite sade

    Tack så mycket för din hjälpvän.

    Jag skulle vilja veta om du kan göra mig en enorm tjänst, jag måste skapa ett skript som hjälper mig att skapa ett .sum vid en viss tid men jag vet inte hur jag ska parametrera det. Du kanske kan hjälpa mig med några tips. Tack så ska jag vara uppmärksam om du kan hjälpa mig.

    hälsningar

  34.   José sade

    Hej, god eftermiddag, titta, jag gör ett jobb i lex, så jag skulle vilja om du kan hjälpa mig med ett skript, med vilket jag kan köra lex-filen, den som genererar lex (lex.yy.c) och datainmatningsfilen .

    tack så mycket

  35.   Wilmer Ron sade

    vattenkrasse tack dok !!! Jag är ny på manuset tack så mycket hälsningar jag kommer att vara på utkik med din nya handledning !!!!

  36.   Karen vega sade

    Hej!

    Tack så mycket för dina bidrag, jag börjar komma in i unix och det är sällsynt att någon förklarar detta koduniversum på ett så enkelt sätt. Jag skulle vilja fråga dig om jag med din procedur kan skapa ett skript som hjälper mig att hitta n antal filer som finns i samma sökväg och att jag kopierar dem till en annan mapp ... någon sa till mig att jag kan lagra sökvägen och namnet på en text mina filer, men det är inte klart för mig hur man gör det. Jag är uppmärksam.

    Hälsningar!

  37.   Eibar Amaya sade

    Hej jag har en VPS men jag behöver hjälp i vissa saker orita själv Jag är intresserad av hur man skapar ett skript eller något så att jag kör en självbackup av allt som finns i min / root-mapp och säkerhetskopian körs var 1: e timme om kan du hjälpa till med att jag skulle uppskatta dig för mycket i det

    Jag lämnar min facebook om du vill hjälpa mig jag behöver mycket hjälp 🙂

  38.   Jorge Rodriguez sade

    skapa mig en för att pinga och övervaka viss nätverksutrustning i företaget
    men jag gjorde det enkelt

    tryck på red.sh && chmod + x red.sh
    kastade ut '# -- KODNING: UTF-8 -- '>> red.sh
    echo 'ping 10.50.0.125 -w 5' >> red.sh
    eko 'ping 10.50.0.80 -w 5' >> red.sh

    kör det ./red.sh och bra

  39.   Guillermo sade

    Hej, jag måste skapa ett automatiskt installationsskript. Jag är villig att betala för ett väl utfört jobb. De som är intresserade, skicka mig ett e-postmeddelande till carranzalh@gmail.com. Tack

  40.   hej sade

    de suger min kuk XD

  41.   hdexz sade

    God morgon vän, kan du hjälpa mig med något
    Jag måste göra en säkerhetskopia med Linux av företaget eftersom det är säkrare så att virus inte fångar det men jag vet inte hur man gör det
    Jag måste skapa ett skript som packar filerna och skickar dem till en ftp

    Jag skulle uppskatta i förväg skriva till min e-post

    cesarloscor@gmail.com