Verstinn Linux Shell a Basic Shell Scripting Language Tipps - Deel I


Bild schwätzt méi wéi Wierder an d'Bild hei drënner seet alles iwwer d'Aarbecht vu Linux.

  1. 5 Shell Scripte fir Shell Programméierung ze léieren - Deel II
  2. Segelen duerch d'Welt vu Linux BASH Scripting - Deel III

Linux Shell verstoen

  1. Shell: E Command-Line Interpretor deen e Benotzer mam Betribssystem verbënnt an et erlaabt d'Befehle auszeféieren oder duerch Textskript ze kreéieren.
  2. Prozess: All Aufgab déi e Benotzer am System ausféiert gëtt e Prozess genannt. E Prozess ass bësse méi komplex wéi just eng Aufgab.
  3. Datei: Et wunnt op der Festplack (hdd) an enthält Daten déi vun engem Benotzer gehéiert.
  4. X-windows aka windows: E Modus vu Linux wou Écran (Monitor) kann a kleng Deeler opgedeelt ginn, genannt Fënsteren, déi e Benotzer erlaben e puer Saache gläichzäiteg ze maachen an/oder vun enger Aufgab op eng aner ze wiesselen einfach a kuckt Grafiken op eng flott Manéier.
  5. Textterminal: E Monitor deen nëmmen d'Fäegkeet huet Textstuff ze weisen, keng Grafiken oder e ganz Basis Grafikdisplay.
  6. Sessioun: Zäit tëscht Umeldung an Ausloggen vum System.

Aarte vu Shell op enger Standard Linux Verdeelung

Bourne Schuel: D'Bourne Schuel war eng vun de grousse Muschelen, déi a fréie Versioune benotzt goufen a gouf de facto Standard. Et gouf vum Stephen Bourne bei Bell Labs geschriwwen. All Unix-ähnlech System huet op d'mannst eng Shell kompatibel mat der Bourne Shell. De Bourne Shell Programmnumm ass sh an et ass typesch an der Dateisystemhierarchie bei /bin/sh.

C Shell: D'C Shell gouf vum Bill Joy fir d'Berkeley Software Distribution entwéckelt. Seng Syntax ass no der C Programméiersprooch modelléiert. Et gëtt haaptsächlech fir interaktiv Terminal benotzt, awer manner dacks fir Scripting a Betribssystem Kontroll. C Shell huet vill interaktiv Kommandoen.

Start de Spaass! (Linux Shell)

Et existéieren Dausende vu Kommandoen fir Kommandozeil Benotzer, wéi wier et mat hinnen all ze erënneren? Hmm! Dir kënnt einfach net. Déi richteg Kraaft vum Computer ass Är Aarbecht ze vereinfachen, Dir musst de Prozess automatiséieren an dofir braucht Dir Skripte.

Skripte si Sammlunge vu Kommandoen, an enger Datei gespäichert. D'Shell kann dës Datei liesen an op d'Befehle handelen, wéi wa se op der Tastatur aginn goufen. D'Shell bitt och eng Rei nëtzlech Programméierungsfeatures fir Scripte wierklech mächteg ze maachen.

Basics vun Shell Programméiere

  1. Fir eng Linux Shell ze kréien, musst Dir en Terminal starten.
  2. Fir ze kucken wéi eng Shell Dir hutt, lafen: echo $SHELL.
  3. Am Linux steet den Dollar Zeechen ($) fir eng Shell Variabel.
  4. De Kommando 'Echo' bréngt just zréck wat Dir aginn hutt.
  5. D'Pipelineinstruktioun (|) kënnt fir d'Rettung, wann Dir verschidde Befehle ketten.
  6. Linux Kommandoen hunn hir eege Syntax, Linux wäert Iech net verzeien egal wéi d'Feeler sinn. Wann Dir e Kommando falsch kritt, wäert Dir näischt flunken oder beschiedegen, awer et funktionnéiert net.
  7. #!/bin/sh - Et gëtt Shebang genannt. Et gëtt um Top vun engem Shell-Skript geschriwwen an et gëtt d'Instruktioun un de Programm /bin/sh weiderginn.

Iwwert Shell Skript

Shell Skript ass just eng einfach Textdatei mat .sh Extensioun, mat ausführbarer Erlaabnis.

  1. Open Terminal.
  2. Navigéiert op d'Plaz wou Dir e Skript wëllt erstellen mam Kommando 'cd'.
  3. Cd (enter) [Dëst bréngt d'Prompt an Ärem Heemverzeichnis].
  4. touch hello.sh (Hei hu mir de Skript als Hallo genannt, erënnert un datt d'.sh' Extensioun obligatoresch ass).
  5. vi hello.sh (nano hello.sh) [Dir kënnt Äre Liiblingseditor benotze fir de Skript z'änneren].
  6. chmod 744 hello.sh (de Skript ausféierbar mécht).
  7. sh hello.sh oder ./hello.sh (de Skript leeft)

#!/bin/bash
# My first script

echo "Hello World!"

Späichert déi uewe genannte Linnen op enger Textdatei, maacht se ausführbar a lafen se, wéi uewen beschriwwen.

Hello World!

Am uewe genannte Code.

#!/bin/bash (is the shebang.)
# My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)

OK Zäit fir déi nächst Schrëft ze plënneren. Dëse Skript wäert Iech soen, Ären Benotzernumm a lëscht déi lafend Prozesser.

#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps

Erstellt eng Datei mat uewe genannte Coden, späichert se op alles wat Dir wëllt, awer mat der Extensioun .sh, maacht se ausführbar a lafen se vun Ärem Terminal.

Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
  PID TTY          TIME CMD
 1111 pts/0    00:00:00 bash
 1287 pts/0    00:00:00 sh
 1288 pts/0    00:00:00 ps

War dat cool? Skript schreiwen ass sou einfach wéi eng Iddi ze kréien an pipelined Kommandoen ze schreiwen. Et ginn och e puer Restriktiounen. Shell Scripte sinn exzellent fir präzis Dateiesystem Operatiounen a Skript d'Kombinatioun vun existente Funktionalitéit a Filteren a Kommandozeilen Tools iwwer Päifen.

Wann Är Bedierfnesser méi grouss sinn - ob a Funktionalitéit, Robustheet, Leeschtung, Effizienz etc - da kënnt Dir op eng méi vollstänneg Sprooch plënneren.

Wann Dir scho C/Perl/Python Programméiersprooch oder all aner Programméierungssprooch kennt, d'Skriptsprooch léieren wäert net vill schwéier sinn.

Plënneren, schreift eisen drëtten a leschte Skript fir dësen Artikel. Dëst Skript handelt als interaktiv Skript. Firwat maacht Dir net selwer dësen einfachen awer interaktiven Skript aus a sot eis wéi Dir Iech gefillt hutt.

#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"
Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye

Gutt, dëst ass keen Enn. Mir hu probéiert Iech e Geschmaach vum Skript ze bréngen. An eisem zukünftegen Artikel wäerte mir dëst Skriptsprooch Thema ausbauen, éischter en ni ophalend Skriptsprooch Thema, fir méi perfekt ze sinn. Är wäertvoll Gedanken an de Kommentarer sinn héich appréciéiert, Like an deelt eis an hëlleft eis ze verbreeden. Bis dohin just chill, halen verbonnen, bleiwt ofgeschloss.