Comprèn Linux Shell i els consells bàsics sobre el llenguatge de scripting Shell - Part I


La imatge parla més que les paraules i la imatge següent ho diu tot sobre el funcionament de Linux.

  1. 5 scripts d'intèrpret d'ordres per aprendre la programació d'intèrpret d'ordres - Part II
  2. Navegant pel món dels scripts BASH de Linux - Part III

Comprendre Linux Shell

  1. Shell: un intèrpret de línia d'ordres que connecta un usuari al sistema operatiu i permet executar les ordres o creant un script de text.
  2. Procés: qualsevol tasca que executi un usuari al sistema s'anomena procés. Un procés és una mica més complex que només una tasca.
  3. Fitxer: resideix al disc dur (hdd) i conté dades propietat d'un usuari.
  4. X-windows també conegut com Windows: un mode de Linux on la pantalla (monitor) es pot dividir en petites parts anomenades finestres, que permeten a un usuari fer diverses coses al mateix temps i/o canviar d'una tasca a una altra. fàcilment i visualitza els gràfics d'una manera agradable.
  5. Terminal de text: un monitor que només té la capacitat de mostrar contingut de text, sense gràfics o una pantalla gràfica molt bàsica.
  6. Sessió: temps entre l'inici de sessió i la sortida del sistema.

Tipus de Shell en una distribució estàndard de Linux

Bourne shell : el Bourne shell va ser un dels principals shells utilitzats en les primeres versions i es va convertir en un estàndard de facto. Va ser escrit per Stephen Bourne a Bell Labs. Cada sistema semblant a Unix té almenys un shell compatible amb el shell Bourne. El nom del programa Bourne shell és sh i normalment es troba a la jerarquia del sistema de fitxers a /bin/sh.

C shell: el C shell va ser desenvolupat per Bill Joy per a la distribució de programari de Berkeley. La seva sintaxi es basa en el llenguatge de programació C. S'utilitza principalment per a l'ús de terminals interactius, però amb menys freqüència per a scripts i control del sistema operatiu. C shell té moltes ordres interactives.

Comença la diversió! (Linux Shell)

Hi ha milers d'ordres per a l'usuari de la línia d'ordres, què tal si recordeu-les totes? Hmmm! Simplement no pots. El veritable poder de l'ordinador és facilitar el vostre treball, necessiteu automatitzar el procés i, per tant, necessiteu scripts.

Els scripts són col·leccions d'ordres, emmagatzemades en un fitxer. L'intèrpret d'ordres pot llegir aquest fitxer i actuar sobre les ordres com si s'haguessin escrit al teclat. El shell també ofereix una varietat de funcions de programació útils per fer que els scripts siguin realment potents.

Conceptes bàsics de programació Shell

  1. Per obtenir un shell Linux, heu d'iniciar un terminal.
  2. Per veure quin shell teniu, executeu: echo $SHELL.
  3. A Linux, el signe del dòlar ($) representa una variable de shell.
  4. L'ordre eco només retorna el que escriguis.
  5. La instrucció de canalització (|) arriba a rescatar quan s'encadenen diverses ordres.
  6. Les ordres de Linux tenen la seva pròpia sintaxi, Linux no us perdonarà els errors. Si rep una ordre equivocada, no fallarà ni danyarà res, però no funcionarà.
  7. #!/bin/sh: s'anomena shebang. S'escriu a la part superior d'un script de shell i passa la instrucció al programa /bin/sh.

Sobre shell Script

L'script de Shell és només un fitxer de text senzill amb l'extensió .sh, amb permís d'execució.

  1. Obre el terminal.
  2. Navegueu fins al lloc on voleu crear l'script mitjançant l'ordre cd.
  3. Cd (introdueix) [Això us indicarà el vostre directori d'inici].
  4. toqueu hello.sh (Aquí hem anomenat l'script com a hello, recordeu que l'extensió .sh és obligatòria).
  5. vi hello.sh (nano hello.sh) [Podeu utilitzar el vostre editor preferit per editar l'script].
  6. chmod 744 hello.sh (fer que l'script sigui executable).
  7. sh hello.sh o ./hello.sh (executant l'script)

#!/bin/bash
# My first script

echo "Hello World!"

Deseu les línies anteriors en un fitxer de text, feu-lo executable i executeu-lo, tal com es descriu anteriorment.

Hello World!

En el codi anterior.

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

D'acord, és hora de passar al següent script. Aquest script us indicarà el vostre nom d'usuari i llistarà els processos en execució.

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

Creeu un fitxer amb els codis anteriors, deseu-lo en el que vulgueu, però amb l'extensió .sh, feu-lo executable i executeu-lo, des del vostre 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

Va ser genial això? Escriure un script és tan senzill com tenir una idea i escriure ordres canalitzades. També hi ha algunes restriccions. Els scripts d'intèrpret d'ordres són excel·lents per a operacions concises del sistema de fitxers i per a l'escriptura de la combinació de la funcionalitat existent en filtres i eines de línia d'ordres mitjançant canalitzacions.

Quan les vostres necessitats siguin més grans, ja sigui en funcionalitat, robustesa, rendiment, eficiència, etc., podeu passar a un llenguatge amb més funcions.

Si ja coneixeu el llenguatge de programació C/Perl/Python o qualsevol altre llenguatge de programació, aprendre el llenguatge de programació no serà gaire difícil.

Passant a, escriviu el nostre tercer i últim guió per a aquest article. Aquest script actua com un script interactiu. Per què no executeu aquest script senzill però interactiu i ens expliqueu com us heu sentit.

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

Doncs això no és un final. Hem intentat oferir-vos un tast de guió. En el nostre futur article elaborarem aquest tema de llenguatge de script, més aviat un tema de llenguatge de script sense fi, per ser més perfecte. Els vostres valuosos pensaments en els comentaris són molt apreciats, feu M'agrada i compartiu-nos i ajudeu-nos a difondre'ns. Fins aleshores només cal relaxar-se, mantenir-se connectat, estar atent.