- - Hvordan man skriver bash-scripts for at automatisere Linux

Hvordan man skriver bash-scripts for at automatisere Linux

Bash-scripting er en nyttig færdighed at lære som enLinux-bruger. Selv som nybegynder kan det at kende denne færdighed være forskellen mellem at drage fuld fordel af din maskine og gøre alt for hånd. Derfor lærer vi dig i denne artikel, hvordan du skriver bash-scripts til at automatisere Linux og tage fuld kontrol over dit skrivebord. Vi vil gennemgå det grundlæggende ved scripting med Bash-shell, det grundlæggende om, hvad der laver et script, hvordan du kører dem på dit system, hvad shebangs betyder, og mere!

Typer af scripts

Der er mange forskellige typer manuskripter. Hovedsageligt: ​​SH og BASH. Disse filtypenavner er vigtige, fordi filtypenavnet fortæller tolken, hvordan det køres. Hvis en fil er en SH-fil, kan den køres i enhver skal, ikke kun Bash. Dette betyder, at et script, der er skrevet til Bash på Linux, kan køre på Mac, BSD og andre steder med lignende skaller.

Scripts, der bruger BASH-filtypenavnet, er kunbetød at løbe inde i Bash. Det er tilstrækkeligt at sige, dit script med bash-filtypenavnet kører ikke i Fish shell på Linux eller nogen af ​​de andre lignende skaller, der er tilgængelige.

shebang

Nogle scripts bruger slet ikke filtypenavne. I stedet bruger de en shebang til at lade tolken forstå, hvad scriptet er til, og hvordan man kører det. Når man skriver et manuskript, kommer shebang ALLTID først. Hvis en shebang er fraværende, ofte vil et script afvise at køre, især hvis der ikke bruges nogen filtypenavn.

Der er meget at lære om shebangs, menbegyndere behøver ikke at bekymre sig om dem. De viser sig kun at være nyttige for avancerede Bash-brugere og ønsker at skrive utroligt komplekse Bash-værktøjer. Som begyndere er den eneste shebang, som brugere har brug for at tænke på, den standard: #! / Bin / bash

Oprettelse af et Bash-script

Mange begyndere forveksler bash-scripts til faktiskeprogrammering. Hovedformålet med scripting i bash er at strenge mange kommandoer sammen, effektivt at gøre lange komplicerede ting uden behov for at skrive hver lille ting ud i terminalskallen. Hvis du prøver at lave seriøs programmering i Bash, skal du stoppe og overveje et faktisk programmeringssprog, der bruges på Linux som Python.

For at starte, skal du åbne en terminal og indtaste følgende kommando:

nano myfirstbashscript

Dette bringer Nano-teksteditor op. Inden i nano, tilføj shebang for at hjælpe tolken med at identificere, hvad de skal gøre med scriptet.

#!/bin/bash

Herfra kan vi gøre hvad som helst! For eksempel: en Ubuntu-bruger kan oprette et simpelt opdateringsskript ved at tilføje linjerne:

sudo apt update;sudo apt upgrade -y

Alternativt et andet eksempel: lav et kontinuerligt ping-script til at køre i baggrunden, hvis du er bekymret for din netværkshastighed.

ping google.com

Føj eventuelle kommandoer, du vil have, til scriptet! Bliv kreativ!

Når du har tilføjet det, du vil, til dit script, skal du gemme det med nano ved hjælp af CTRL + O.

Når scriptet er oprettet, er det tid til at opdatere tilladelserne. Gør i en terminal:

sudo chmod +x myfirstbashscript

Kører scripts

For at køre et shell-script skal du åbne en terminal og gøre:

sudo sh script.sh

Hvis du vil køre bash-filer, skal du prøve:

sudo bash script.bash

Alternativt kan ethvert script uanset filtypenavnet let køre med ./filnavn i terminalen.

Alle tre måder at køre scripts fungerer meget godt på. Det er sagt, at bruge ./filnavn er den værste måde, da scripts ofte ikke kører, medmindre bash-scriptet har de rigtige tilladelser. Indstil tilladelser med:

sudo chmod +x script

Gør dit script til et binært

Hvis du vil køre dit script ved blot at skrive navnet på filen i terminalen, skal du gøre det til et binært. For at gøre dette skal du bruge chmod-kommandoen til at gøre den eksekverbar.

sudo chmod +x

Når scriptet er markeret som en eksekverbar, er dettid til at flytte scriptet, så det er tilgængeligt på brugerens sti. Gør dette med MV-kommandoen. Alternativt kan du bruge CP-kommandoen i stedet for flytte-kommandoen, hvis du vil gemme en sikkerhedskopi af dit script på dets oprindelige placering.

sudo mv /location/of/script /usr/bin/

eller

sudo cp /location/of/script /usr/bin/

Kør derefter det nyligt flyttede script inden iterminal, hvor som helst blot ved at skrive navnet på den i terminalen. For eksempel: du brugte YouTube-DL til at skrive et automatisk ripping-script til YouTube og placerede det i / usr / bin / for let adgang.

For at køre det nævnte script, gør du det:

youtubescript

Det er det!

Konklusion

At lære sproget i bash er et nyttigt værktøj. Uden det ville systemadministratorer og terminalgeeks finde sig i at slave over en terminal i timevis ad gangen. I stedet kan de skrive bash-scripts for at automatisere Linux. Ved at lære at udnytte kraften i Bash skriver du alle disse komplekse handlinger ud og kører dem hurtigt med et script.

Skallen er smuk, og jo mere du lærerom det, jo mere lærer du om deres egne Linux-systemer, hvordan du automatiserer dem og endda forbedrer, hvordan tingene fungerer internt! Himmelen er grænsen for bash, alt hvad det kræver er lidt kreativitet!

Kommentarer