4 důležité typy skriptů Shell pro nováčky v systému Linux (užitečné)

Obsah:

Anonim

Zdroj obrázku: pixabay.com

Shell skriptování v Linuxu - počítače obecně rozumějí jazyku 0 a 1, který je známý jako binární jazyk. Před deseti lety lidé psali programy a aplikace, jako jsou dokonce kalkulačky v binárních jazycích. Ale to nebylo hezké. Jen si představte! Chcete vypočítat 73 + 96, jak byste psali? Museli byste raději spočítat binární celé číslo pro 73 a 96 a poté je přidat. Člověk musí být docela hloupý, aby to udělal. Jeden by raději spočítal 73 a 96 na papíře a pokračoval dál. Ale to je z menší části. Co když budete muset něco spočítat (19273/23 * (2967 3)). Nyní bych řekl, že je to docela intenzivní.

Indický muž, který se učí kódovat vše v binárním jazyce, tedy nedává smysl. To je hlavní důvod, proč nebyly počítače v 70. a 80. letech populární. Později, ještě před vývojem systému Windows, lidé začali vyvíjet jádra a podobné věci, které byly hlavní součástí operačního systému. Jádra používaná k pochopení lidsky čitelného formátu konkrétního programu a jeho převedení na strojový kód. A zde se objevily programovací jazyky a změnily celou éru počítačového světa. Aplikace byly postaveny v C a C ++ a později s Java, Python, Ruby a Perl.

Od teď existuje kolem 50 programovacích jazyků. A to jsou přinejmenším ty, o kterých vím. A to natolik, že existují i ​​jiné programovací jazyky, kterým je ještě těžší porozumět než strojový kód. Mým bodem jsou příklady jako Kuřecí programování a Malbolge. S některými vážnými ošklivými věcmi se musí vypořádat.

Programování prostředí … .errr … Skriptování?

Teď by vás zajímalo, proč jsem nezmínil Shell o programování výše spolu s ostatními programovacími jazyky. Hlavním důvodem, proč je Shell sám, není programovací jazyk. Je to skriptovací jazyk. Shell je pouze interaktivní program uživatele, který interpretuje jakýkoli vstup od uživatele a dává výsledek za předpokladu, že příkaz je platný. Poté předá program jádru, aby jej provedl. Shell není součástí jádra, ale místo toho používá jádro pro provádění a vytváření souborů.

Typy skriptovacího programu Shell

Nyní, na rozdíl od C, C ++ nebo Java, existuje několik dalších typů prostředí, které lze použít pro skriptování prostředí. Do dnešní doby jsou k dispozici čtyři typy prostředí:

Ne.Typ skořepinyPopis
1.Bash aka Bourne Again ShellToto je nejběžnější shell dostupný na všech systémech založených na Linuxu a Debianu. Je to open source a freeware.
2.CSH nebo C ShellTento skriptovací program Shell používá syntaxi prostředí C programování a je téměř podobný C.
3.KSH nebo Korn ShellKorn je skriptovací program Shell založený na Unixu, původně založený na skriptování Bash Shell. Tento shell je poměrně pokročilý a jeho programovací jazyk na vysoké úrovni.
4.TCSHNeexistuje žádná konkrétní plná forma TCSH. Je to tak. TCSH je pokročilá verze prostředí Berkeley Unix C. Znovu podporuje syntaxi stylu C.

Pokud jde o dnešní den, nemáme zájem o všechny výše uvedené skořápky. Zajímá nás pouze skořápka Bash, protože je to dnes nejčastěji používaná skořápka na světě.

Bash Shell

Skriptovací program Bash Shell je skriptovací jazyk na vysoké úrovni, podobný jazyku pythonu. Ale pokud už máte nějaké zkušenosti s Pythonem, zjistíte, že skriptování Bash Shell je mnohem jednodušší než jakýkoli jiný skriptovací jazyk. Jeden může psát skripty v bashu mnohem rychleji než v C, C ++, Java nebo Python. Výchozí terminál v dnešním nejvíce linuxovém prostředí, řekněme například pro: - Ubuntu, Linux Mint Cinnamon / Rafaela, Fedora, Arch Linux nebo jakékoli jiné prostředí Debian, sestává z Bash jako výchozí Shell. Můžete však zkontrolovat všechna prostředí prostředí ve vašem systému zadáním následujícího do výchozího terminálu: -

$ cat / etc / shells

(Poznámka: Znak dolaru na začátku se používá k označení terminálu.)

Syntaxe 'cat' se používá ke čtení textových souborů. Typy programů pro skriptování prostředí v prostředí Linux, Unix nebo Debian jsou uloženy v souboru prostředí v adresáři etc. Každý shell má svou vlastní jedinečnou sadu syntaxí a svou vlastní sadu vestavěných funkcí. DOS nebo okna mají také svůj vlastní shell známý jako neslavný 'příkazový řádek' nebo 'powershell' od oken 8.1 a dále, ale stále není tak silný jako bash. Syntaxe cat vám poskytne seznam skořápek dostupných v systému, ale pro nalezení výchozího shellu nebo pro kontrolu aktuálního prostředí pomocí shellu lze v skriptovacím terminálu Shell použít následující syntaxi: -

$ echo $ SHELL

Syntaxe 'echo' se používá k tisku libovolného příkazu. Zde je 'SHELL' proměnná přiřazená k tisku aktuálního shellu. Znak dolaru po 'echo' se používá k reprezentaci proměnné v prostředí Shell Scripting.

Doporučené kurzy

  • Certifikační kurz Java Hibernace
  • Java Spring Course
  • Školení WordPress online
  • Ruby Training

Shell skriptování

Takže teď víte, co je shell, podívejme se na Shell Scripting a proč je to známé. Shell Scripting není nic jiného než řada příkazů v jednoduchém textovém souboru končícím příponou „.sh“. '.Sh' určuje, že se jedná o spustitelný soubor shellu. Po napsání shellového skriptu je třeba změnit spustitelné oprávnění pomocí funkce chmod. Ve výchozím nastavení není žádný nově vytvořený shell spustitelný v prostředí UNIX nebo Linux, pokud se oprávnění nezmění konkrétně. Shell Scripting je téměř podobný jako u dávkového programování z Windows, ale rozdíl spočívá v tom, že Shell Scripting je poněkud silnější a poskytuje mnohem více špičkového interaktivního prostředí spolu s dokončováním karet. K napsání shellového skriptu je třeba využít dobrý textový editor. O pár lepších, o kterých vím, jsou Vim, Gedit a Leafpad.

Na rozdíl od jiných programovacích jazyků jsou skripty Shell rychlejší psát a spouštět. Pro provedení nemusíte stahovat žádné konkrétní balíčky nebo závislosti. Mohou je používat nejen správce systému, ale také jen normální osoba pro každodenní provádění automatizovaných skriptů. Následuje jednoduchý příklad zde napsaného skriptu.

#! / bin / bash echo -e "Vítejte v prvním shellovém programu. \ n" echo -e " Sem napište něco a tento program vytiskne to samé. \ n" #použití uživatele pro vstup pro čtení, čtení # čtení vstupu od uživatele, echo "Vy zadáno: $ input ” exit 0

Nyní mi dovolte vysvětlit všechny parametry ve výše uvedeném kódu. Zaprvé, zapište výše uvedený kód do textového souboru ve formátu „tak, jak je“ a uložte jej s příponou končící na „.sh“. Například název souboru jako 'main_program.sh'. Ujistěte se, že to není 'main_program.sh.txt'. Většina začátečníků má tendenci dělat to samé a pak to není spustitelné. Po zkopírování výše uvedeného kódu změňte jeho oprávnění pomocí následující syntaxe v terminálu: -

$ chmod + x main_program.sh NEBO $ chmod 755 main_program.sh

Nebojte se použít některý z výše uvedených příkazů, protože oba dělají totéž. V moderních skriptovacích programech bash shell se '755' mění na '+ x'; takže nezáleží na tom, který z nich skutečně používáte. Po změně oprávnění zadejte následující příkaz a proveďte jej.

$. / main_program.sh

Období a lomítko se používají k odsazení a spuštění skriptů prostředí. Jakmile spustíte výše uvedený skript, vytiskne první příkaz echo a poté vás požádá, abyste něco zadali. Jakmile jej zadáte, vytiskne to samé zpět a ukončí tlumočníka. Dovolte mi tedy vysvětlit všechny výše uvedené syntaxe. '#! / Bin / bash' se používá k tomu, aby tlumočníkovi řekl, že se jedná o bash skript a program skriptování prostředí Bash je umístěn v adresáři 'bin'. Příkaz 'echo' se používá k tisku libovolného příkazu a příznak '-e' se používá k označení shellu, že bude buď nový řádek označený jako 'slash n nebo \ n' nebo karta 'slash t nebo \ t 'nebo jeho podoby uvnitř ozvěny. Část hash na druhém řádku se používá k odsazení komentáře v bash skriptu. Ať už píšete po hašiši, bude to komentováno a nebude provedeno. To však neplatí pro '#! / Bin / bash' v prvním řádku. Takto má skript fungovat. Syntaxe „read“ se používá ke čtení jakéhokoli vstupu od uživatele. A „vstup“, který jsem zmínil po syntaxi „čtení“, je proměnná, ve které je uložen vstup od uživatele. Místo vstupu lze použít libovolnou proměnnou. Na druhém posledním řádku se vstup $ používá k identifikaci sebe sama jako proměnné a na výstup uloženého vstupu uvnitř ní. Nakonec se příkaz exit používá k ukončení interpretu s nulovou čistou hodnotou exit.

Neaktivní skriptování

Výše uvedený příklad je nyní docela jednoduchý. Existují však vestavěné moduly, které můžete použít místo toho, abyste sami zadali všechny vstupy. Následuje část kódu, která vytiskne uživatelské jméno, které je aktuálně přihlášeno, aktuální čas, kalendářní datum a také počet přihlašovacích údajů: -

#! / bin / bash # Tento skript vytiskne aktuálně přihlášené informace o uživateli, počet přihlášených uživatelů, datum, čas a kalendář echo „Dobrý den, $ USER“ echo „Dnešní datum a čas je` date` ” echo“ Počet přihlášených uživatelů: `kdo | wc -l` “

echo „Calendar“

CAL

exit 0

Spusťte tento skript po změně oprávnění výše uvedeného souboru. Nyní by vás mohlo zajímat, že v předchozím skriptu jsme skutečně zadali vstup a poté jej vrátili pomocí proměnné th. Ale zde jsme neposkytli žádný vstup uvnitř proměnné '$ USER' a jak to tedy vytiskne přesného uživatele. Hlavním důvodem je, že tyto věci jsou již v systému nakonfigurovány. Pamatujete, že jsem vám na začátku říkal o $ SHELL, jak je ve výchozím nastavení definováno? Ano, podobný je tomu u USER $ tady. Pokud jde o datum, pokud do terminálu zadáte „datum“ bez uvozovek, vytiskne se přesné datum a čas. Právě jsem použil jednoduchou citaci (`), abych se sám identifikoval jako syntaxe, než jako součást echoingového příkazu. Jediný citát (`) provede jakoukoli syntaxi vytištěnou uvnitř, ať už v příkazu nebo kdekoli jinde. Pokud jde o část počtu uživatelů, příkaz 'who' se používá ke kontrole aktuálních přihlášených uživatelů spolu s přihlášenými procesy a datem a časem, kdy byl spuštěn. Ale co se týče výše uvedeného příkazu, ve skutečnosti jsem jej zkrátil, aby vyprodukoval pouze počet uživatelů, kteří jej přihlásili pomocí příkazu 'wc -l'. Sloupec (|) nebo to, co je známo jako potrubí, se používá ke kombinaci dvou příkazů. Potrubí vlastně znamená mnohem víc než to, ale tady se nebudu podrobně zabývat. Nakonec jsem vytiskl kalendář pomocí příkazu „cal“ vestavěného pro tisk aktuálního data v kalendáři.

Exit Zero

Exit Zero je něco, co jsem nevysvětlil v žádném z výše uvedených programů. Hlavním důvodem, proč je 'Exit Zero', je mnohem závažnější než kterákoli ze syntaxí výše v Shell Scripting. Ve výchozím nastavení pokaždé, když spustíte skript v distribuci Linux nebo Unix, vrátí dva typy hodnot nebo konkrétněji stav ukončení, aby zkontroloval, zda je provádění shellového skriptu úspěšné nebo ne. Pokud vrátí hodnotu jako Nula, pak bylo provádění úspěšné, jinak se buď nevykonalo, nebo došlo k nějaké chybě během provádění. Zadáním „exit 0“ na konec libovolného skriptu tedy zkontrolujete stav provedení skriptu.

Všechny věci, které jsem zde popsal, jsou jen nejmenší základní částí skriptu Shell v linuxové distribuci. Výstupní nulová část a roura hrají důležitou roli při provádění více skriptování prostředí v linuxových příkazech a jejich použití spolu s podmíněnými příkazy if a else.

Související články: -

Zde je několik článků, které vám pomohou získat více podrobností o typech skriptů Shell pro Linux Newbies, takže stačí projít odkaz.

  1. Shell Scripting Interview Otázky | Top 10 užitečných otázek
  2. Linux vs Windows - najděte 9 nejúžasnějších rozdílů
  3. Linux Interview Otázky a odpovědi Užitečné a nejžádanější
  4. Kariéra v administraci Linuxu
  5. Pravidla a předpisy parametrů skriptů Shell