Búsqueda de sitios web

Comprender el shell de Linux y los consejos básicos del lenguaje de scripting del shell - Parte I


La imagen dice más que las palabras y la siguiente imagen dice todo sobre el funcionamiento de Linux.

Leer también

  1. 5 scripts de Shell para aprender a programar Shell – Parte II
  2. Navegando por el mundo de las secuencias de comandos BASH de Linux - Parte III

Entendiendo el shell de Linux

  1. Shell: un intérprete de línea de comandos que conecta a un usuario al sistema operativo y permite ejecutar los comandos o crear un script de texto.
  2. Proceso: cualquier tarea que un usuario ejecuta en el sistema se denomina proceso. Un proceso es poco más complejo que una simple tarea.
  3. Archivo: Reside en el disco duro (hdd) y contiene datos propiedad de un usuario.
  4. X-windows también conocido como windows: un modo de Linux donde la pantalla (monitor) se puede dividir en pequeñas “partes” llamadas ventanas<, que permiten a un usuario hacer varias cosas al mismo tiempo y/o cambiar de una tarea a otra fácilmente y ver los gráficos de una manera agradable.
  5. Terminal de texto: un monitor que solo tiene la capacidad de mostrar texto, sin gráficos o con una visualización de gráficos muy básica.
  6. Sesión: Tiempo entre el inicio de y el cierre de sesión del sistema.

Tipos de Shell en una distribución estándar de Linux

Bourne shell: El Bourne shell fue uno de los principales shells utilizados en las primeras versiones y se convirtió en un estándar de facto. Fue escrito por Stephen Bourne en Bell Labs. Cada sistema tipo Unix tiene al menos un shell compatible con el shell Bourne. El nombre del programa Bourne Shell es “sh” y normalmente se encuentra en la jerarquía del sistema de archivos en /bin/sh.

C shell: El C shell fue desarrollado por Bill Joy para Berkeley Software Distribution. Su sintaxis sigue el modelo del lenguaje de programación C. Se utiliza principalmente para uso de terminales interactivos, pero con menos frecuencia para secuencias de comandos y control del sistema operativo. El shell C tiene muchos comandos interactivos.

¡Comenzando la diversión! (Concha de Linux)

Existen miles de comandos para usuarios de línea de comandos, ¿qué tal si los recordamos todos? ¡Mmm! Simplemente no puedes. El verdadero poder de la computadora es facilitar su trabajo, necesita automatizar el proceso y, por lo tanto, necesita scripts.

Los scripts son colecciones de comandos almacenados en un archivo. El shell puede leer este archivo y actuar sobre los comandos como si estuvieran escritos en el teclado. El shell también proporciona una variedad de funciones de programación útiles para hacer que los scripts sean realmente potentes.

Conceptos básicos de la programación de Shell

  1. Para obtener un shell de Linux, debe iniciar una terminal.
  2. Para ver qué shell tienes, ejecuta: echo $SHELL.
  3. En Linux, el signo de dólar ($) representa una variable de shell.
  4. El comando 'echo' simplemente devuelve todo lo que escribas.
  5. La instrucción pipeline (|) viene al rescate cuando se encadenan varios comandos.
  6. Los comandos de Linux tienen su propia sintaxis, Linux no le perdonará ningún error. Si te equivocas con un comando, no reprobarás ni dañarás nada, pero no funcionará.
  7. #!/bin/sh – Se llama shebang. Está escrito en la parte superior de un script de shell y pasa la instrucción al programa /bin/sh.

Acerca del script de shell

El script de Shell es simplemente un archivo de texto simple con extensión “.sh”, que tiene permiso ejecutable.

Proceso de escritura y ejecución de un script.

  1. Terminal abierta.
  2. Navegue hasta el lugar donde desea crear el script usando el comando 'cd'.
  3. Cd (enter) [Esto mostrará el mensaje en Su directorio personal].
  4. toque hola.sh (Aquí nombramos el script como hola, recuerde que la extensión '.sh' es obligatoria).
  5. vi hello.sh (nano hello.sh) [Puedes usar tu editor favorito para editar el script].
  6. chmod 744 hello.sh (haciendo que el script sea ejecutable).
  7. sh hello.sh o ./hello.sh (ejecutando el script)
Escribiendo tu primer guión
#!/bin/bash
My first script

echo "Hello World!"

Guarde las líneas anteriores en un archivo de texto, hágalo ejecutable y ejecútelo, como se describe arriba.

Salida de muestra

Hello World!

En el código 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)
Escribiendo tu segundo guión

Bien, es hora de pasar al siguiente guión. Este script le indicará su "nombre de usuario" y enumerará los procesos en ejecución.

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

Cree un archivo con los códigos anteriores, guárdelo en el lugar que desee, pero con la extensión ".sh", hágalo ejecutable y ejecútelo desde su terminal.

Salida de muestra

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

¿Fue genial? Escribir un guión es tan sencillo como tener una idea y escribir comandos canalizados. También existen algunas restricciones. Los scripts de Shell son excelentes para operaciones concisas del sistema de archivos y para secuencias de comandos de la combinación de funcionalidades existentes en filtros y herramientas de línea de comandos a través de canalizaciones.

Cuando sus necesidades sean mayores, ya sea en funcionalidad, robustez, rendimiento, eficiencia, etc., entonces podrá pasar a un lenguaje con más funciones.

Si ya conoce el lenguaje de programación C/Perl/Python o cualquier otro lenguaje de programación, aprender el lenguaje de programación no será muy difícil.

Escribiendo tu tercer guión

Pasando a escribir nuestro tercer y último guión para este artículo. Este script actúa como un script interactivo. ¿Por qué no ejecuta usted mismo este guión simple pero interactivo y nos cuenta cómo se sintió?

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

Salida de muestra

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

Bueno, esto no es el final. Intentamos brindarle una muestra de las secuencias de comandos. En nuestro futuro artículo elaboraremos este tema del lenguaje de scripting, en lugar de un tema interminable sobre el lenguaje de scripting, para que sea más perfecto. Tus valiosos pensamientos en los comentarios son muy apreciados, Dale me gusta y compártelo y ayúdanos a difundir. Hasta entonces, relájate, mantente conectado, estad atentos.

Lea también: 5 scripts de Shell para aprender a programar Shell – Parte II