Jannah-tema Licensen är inte validerad. Gå till sidan med temainställningar för att validera licensen. Du behöver en enda licens för varje domännamn.

En nybörjarguide till shellprogrammering i Linux

Har du någonsin velat lära dig att skriva skript i Linux? Det är enklare än du tror. Ibland är skript (ofta kallade shell- eller bash-skript) faktiska program med komplex kod inuti. Andra gånger är de bara en lång lista med uppgifter som användare har satt ihop för att göra det snabbare och enklare att få saker gjorda på Linux. Här är den bästa nybörjarguiden till shell-skript i Linux.

script-1-800x400.jpg En nybörjarguide till shellskript i Linux I den här artikeln får du lära dig hur du gör skalskript Grunderna i Linux. Först lär du dig grunderna och vad du bör och inte bör göra i ett shellskript, sedan hur du tar emot användarinmatning via ett skript och skriver ut det till terminalskärmen. Du lär dig hur enkelt det är att komma igång (och bästa praxis) med skript i Linux.

Varför gör du ett manus?

Skriptskapande i Linux är en mycket användbar färdighet. Du kan automatisera vissa repetitiva uppgifter med hjälp av bash-skript. Om det görs på rätt sätt kan det göra dig mycket produktiv och låta dig åstadkomma mer på kortare tid.

Du kanske till exempel precis har skapat ett Arch Linux-system från grunden. Operativsystemet, tillsammans med alla nödvändiga paket, är installerat och kan startas i maskinen när operativsystemet startar. Installationen av Arch Linux tar tid, så processen är inte klar.

Vid det här laget kan användaren skriva ett Bash-skript och få allt gjort samtidigt. Inget av detta är programmering – eller avancerat för den delen. Men givet användarens tillräckliga förståelse för hur Arch Linux fungerar kommer de att kunna automatisera nästan hela efterinstallationsprocessen (skrivbordsmiljö, drivrutiner, användarinställningar etc.).

Den enda begränsningen för ditt bash-program är dina kunskaper om Linux och Bash! Att skapa ett är enklare än du tror.

Start

Objekt måste definieras och resurser måste laddas när man skriver kod. Vissa objekt måste också definieras vid programmering med shell. I Bash-programmering kallas detta för en "shebang". De "shebangs" som används i skript talar om för skriptet vilken tolk det ska köra under. Detta kan vara Bash eller något annat skript som finns tillgängligt på ditt system. Observera att olika språk har sina egna språkgränssnitt.

Läs också:  Nybörjare på Linux? Fokusera på skrivbordsmiljön, inte distributionen.

Till exempel: När du skriver en text medPython-språk Då skulle ordet shebang vara

#!/usr/bin/python

Bash har många olika kläder som kan användas, men de flesta användare har förmodligen bara sett

 #!/bin/bash

Som en allmän regel, använd #!/bin/bash när du skriver ett enkelt skript och planera inte att ta bort det från Linux. Alla moderna Linuxdistributioner är baserade på samma version av bash, och bash-skalet finns vanligtvis på samma plats.

En annan knasig grej som visar sig vara användbar är

 #!/usr/bin/env bash

Den är utformad för portabilitet och bör användas om skriptet är utformat för att köras på andra Unix-liknande operativsystem (BSD, macOS, etc.).

Utvalda källor

Att skriva skript i Bash kan vara en komplex process – om skribenten gör det. Oftast är skript helt enkelt en samling olika operationer: överföra en fil, ladda ner något, installera programvara och så vidare.

  • Tänk på att Bash är ett språk utformat för att hantera filer och systemoperationer. Om Bash uppfyller dina behov är det bra. Observera dock att Bash inte är rätt val för avancerad programmering, och du skulle vara bättre betjänad av att byta till något som Python.
  • Gör dina skript "SH"-kompatibla och i ".sh"-format om du planerar att använda skript på mer än bara Linux. Medan andra UNIX-liknande operativsystem kan ha "bash-liknande" skal, har vissa inte bash alls, och det är en bra idé att vara förberedd på det.
  • Lär dig om Bash-skalet och hur det fungerar. Det kommer att hjälpa dig att skriva bättre skript.
  • Använd alltid skumma repliker, och viktigast av allt, använd rätt manus. Det kan vara skillnaden mellan ett bra manus och ett dåligt som inte fungerar ordentligt.
  • Kommentera alltid varje process. Om sex månader kanske du kommer tillbaka till din transkription och undrar vad allt betyder, så det är avgörande att transkriptet är väl dokumenterat och lättförståeligt (för dig och alla andra som kan tänkas se det).
    Gör din kod läsbar. Även om din kod inte är komplex bör den fortfarande vara begriplig och göra det enklare än du tror.
  • Testa ditt skript för fel innan du ger det till andra. Låt inte andra testa fel åt dig. Helst bör dina skript fungera innan du skickar ut dem för att folk ska använda dem.
Läs också:  Det bästa sättet att ta bort Linux-appar från en Chromebook

Skapa ett skript

För att komma igång med skripting behöver du bara en textredigerare. Vilken enkel textredigerare som helst fungerar. Den behöver inte vara komplex eller omfattande. I det här exemplet skapar vi en enkel välkomsttext med Gedit.

Skapa och öppna skriptet i Gedit

Skapa en text med namnet hälsningar.sh  Öppna den i Gedit-redigeraren. Den här första delen av skriptet är själva kodavsnittet, som vi nämnde tidigare. Detta gör att skriptet kan tala om för tolken vad den ska använda för att förstå koden.

#! / Bin / bash

Nu ska vi skriva en kommentar. Detta gör att alla som använder skriptet kan förstå vad koden är avsedd att göra. Kommentarer kan läggas till i ett skript genom att lägga till #-tecknet. Ingenting kommer att registreras av skriptet efter detta.

# Mitt första Linux-skript

Skriv ett enkelt välkomstord

För att skriva ut vilken utdata som helst använder vi kommandot echo i bash. Om du vill skriva ut "Hello world" bör kommandot se ut så här:

eko "Hej världen"

Gör skriptet körbart

För att göra skriptet körbart använder vi kommandot chmod.

chmod +x hälsningar.sh

+x betyder att man lägger till körningsbehörighet till skriptfilen. För att köra skriptet, anropa skriptnamnet med dess relativa sökväg.

./hälsningar.sh

Tar emot användarinmatning

Att ta emot användarinmatning är en kärnfunktion i ett bash-skript, och du bör förstå konceptet med variabler i bash. Variabler är som lagring där du kan lagra värden. I det här fallet lagrar vi användarinmatning i en bash-variabel. För att ge inmatning ställer vi en fråga till användaren.

echo -e "Vad heter du?:"

När användaren anger sitt namn kan vi läsa inmatningen med hjälp av en bash-variabel som heter inputname.

echo -e "Vad heter du? " läs inmatningsnamn

Du kan använda vilket variabelnamn du vill, men se till att lägga till read-kommandot direkt efter echo-kommandot.

Läs också:  Hur man hittar resurskrävande processer i Linux-kommandoraden

Skriv ut välkomstmeddelande

Det lagrade användarnamnet är indatavariabeln för namn. För att hälsa användaren välkomna använder vi kommandot echo igen.

echo "God morgon $inputname"

Vi använder $-tecknet för att representera en variabel i en sträng. Spara skriptet och kör det med kommandot ./greetings.sh.

script.png En nybörjarguide till shellskript i Linux

Nu kan du skapa dina egna hälsningar och dela dem med dina vänner.

Filtillägg

Det finns ingen skillnad i filändelser för skript. Att namnge en fil med filändelsen ".sh" påverkar inte programmets körning nämnvärt. Ett Bash-skript utan filändelse – tomma textfiler och allt däremellan – fortsätter att köras så länge korrekta kommandon och argument finns.

Även om Bash-skalet ignorerar filändelser betyder det inte att en skriptförfattare ska göra det. Vissa skrivbordsmiljöer som låter dig ställa in skalskript att köras vid start förlitar sig på att skriptet har rätt filändelse ".sh". Detta hjälper också för organisationsändamål.

När det gäller detta sparas de flesta shell-skript som ".sh"-filer för portabilitet. "sh" har ingenting att göra med Bash i sig, och skriptet kan köras med vilket kompatibelt shell som helst.

Alternativt kan skript sparas som .bash, .ksh (Unix korn-shell) etc. Dessa filändelser är sämre och begränsar faktiskt skriptets användbarhet. Detta beror på att de endast är utformade för skal som använder dessa filändelser.

Vanliga frågor

F1. Är det lätt att lära sig att använda Bash-skript?
svar. Om du är bekant med programmeringsspråk verkar Bash-programmering ganska enkelt. Det delar några av samma programmeringskoncept, såsom variabler, loopar och så vidare. Men om du inte vet någonting om programmering rekommenderar jag att du börjar med Python. Python är väldigt lätt att lära sig, och du kan till och med skapa skript med det.

F2. Är Bash värt att lära sig?
svar. Om du använder Linux dagligen eller använder Linux i din arbetsmiljö bör du lära dig Bash-skript. Du kan också lära dig Bash för att automatisera dina dagliga uppgifter. Utöver det ser jag ingen användning för Bash inom mjukvaruutvecklingsbranschen.

F3. Hur kan jag lära mig Bash-skript i Windows?
svar. Det finns inget inbyggt sätt att lära sig bash i Windows, men du kan använda Windows Subsystem for Linux (WSL) för att köra det. Linuxdistribution i din Windows-maskin och använd den för att köra bash-kommandon.

Gå till översta knappen