Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Ingenieria de Sistemas / Introduccion a la programacion shell

Introduccion a la programacion shell

Autor jc mouse jueves, diciembre 1, 2016

En este post veremos una muy pequeña introducción de lo que es el mundo de la programación en shell de Linux.

Necesitamos:

  • Ubuntu linux
  • Editor Nano, Le o gedit
  • Conocimientos básicos sobre comandos linux

¿Que es la shell en Linux?

La shell o caparazón, es la interfaz entre el usuario final y el Sistema Operativo. Es decir que gracias a esta shell el usuario puede comunicarse con el núcleo de Linux mediante comandos, ejecutar ordenes o herramientas y obtener un resultado.

Existen multiples versiones de shell, la más conocida y usada es «bash» (Bourne Shell – sh) y es la que usaremos en este tutorial.

Para saber que shell tenemos como predeterminado en nuestro S.O., en una terminal escribimos «echo $SHELL» y presionamos enter.

linux shell

Para saber que shells tenemos en nuestra maquina usamos el comando: cat /etc/shells

Para cambiar de shell usamos: chsh -s /bin/bash

Shell Programming o Shell Scripting

El proceso de escribir scripts se llama Programación Shell o Shell Programming, un script no es más que una secuencia de comandos almacenados en un archivo. Este archivo o script no se compilan, sino que un interprete lee las instrucciones del fichero y las ejecuta secuencialmente.

MI PRIMER PROGRAMA: Hola Mundo

Paso 1. Crear script

Con nuestro editor favorito creamos un archivo llamado «hola.sh»  y después lo abrimos con un editor de texto

touch hola.sh

nano hola.sh

Paso 2. Código

En el archivo creado escribimos:

hello bash

La primera linea le dice a Linux que se debe utilizar el interprete bash

La segunda linea es un comentario, el interprete no lo toma en cuenta, sirve de guía para el programador

La tercera linea es el comando a ejecutar (echo : Muestra una linea de texto)

Paso 3. Permisos

El archivo tal cual esta, no podrá ser ejecutado, antes debemos hacer este script ejecutable con el siguiente comando:

chmod 700 hola.sh

Con este comando le otorgamos al script «hola.sh» los permisos de escritura, lectura, y ejecución para el usuario propietario del mismo.

Paso 4. Ejecución

Para ejecutar el script escribimos el comando:

./hola.sh

y veremos en consola, nuestro mensaje «Hola Mundo»

VARIABLES

Las variables de shell se comportan de forma similar a como lo hacen las variables en otros lenguajes de programación. Por convención las variables se escriben en minúsculas.

Para asignar valor a una variable se realiza de la siguiente forma: nombre_variable=valor_variable

Para recuperar el valor de una variable, se antepone el símbolo «$» antes del nombre.

Por ejemplo podemos emplear una variable en nuestro script hola.sh, el cual queda de la siguiente forma:

bourne shell

y si lo volvemos a ejecutar, obtendremos el mismo resultado.

READ

El comando read se utiliza para solicitar un valor de entrada y guardarlo en una variable.

Opciones

  • read –s (no hace echo de la entrada)
  • read –nN (acepta sólo N caracteres de entrada)
  • read –p “mensaje” (muestra un mensaje)
  • read –tT (acepta una entrada por un maximo d T segundos)

Crea un nuevo script «hola2.sh» y escribe el siguiente código:

leer linux

Al ejecutarlo, se te solicitara tu nombre, escribe y presiona enter.

scripts en linux

COMILLAS

Abra notado que al principio del post, se uso comillas simples (‘…’) para limitar las cadenas de texto, pero luego usamos comillas dobles («…») ¿porque?. Este se debe a que las comillas en linux shell tienen un propósito diferente. A saber:

  • ‘…’ Comillas Simple: Almacenan y muestran una cadena de caracteres de forma literal sin resolución de variables.
  • «…» Comillas dobles: Ademas de almacenar cadena de caracteres, resuelven las variables antes de mostrarlas en pantalla.
  • `…` Comillas invertidas: Sirven para sustituir comandos, es decir, los comandos que estén dentro de las comillas invertidas, serán pasados al comando que los precede. Las comillas invertidas pueden reemplazarse por $()

Ejemplo. comillas.sh

comillas

Y obtendremos como resultado:

Los caracteres son interpretados como tal. $variable
el valor de mi variable es 123
me encuentro en el directorio /home/jc y la fecha es 11/30/16

OPERADORES MATEMÁTICOS

  • + suma
  • – resta
  • * multiplicación
  • / división
  • ** exponenciación
  • % módulo

EVALUAR EXPRESIONES MATEMÁTICAS

Para evaluar expresiones matemáticas contamos con las siguientes opciones:

let

let x=5+5*5
echo $x
30

expr

y=`expr 5 \* 4 + 8`
echo $y
28

cuando usamos expr, se debe hacer uso de espacios entre cada símbolo matemático y numero, en la opción de multiplicación, se debe hacer uso de la barra invertida «\*» , sino nos dará error. Este comando, solo admite y devuelve enteros.

$[] y $(())

x=$[123+321]
y=$(($x-111))
echo $x ; echo $y
444
333

Ejemplo: matemata.sh

matematicas

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Gestión de Stock (Parte 2)

Gestión de Stock (Parte 2)

Continuando con el desarrollo de la aplicación (Parte 1), abrimos Netbeans y creamos un nuevo proyecto al que llamaremos...

iFrame Injection – Ocultar código malicioso

iFrame Injection – Ocultar código malicioso

En ocasiones los administradores de sitios web experimentan problemas de lentitud en su carga o en el peor de los casos...

Crea tu propia aplicacion para realizar llamadas

Crea tu propia aplicacion para realizar llamadas

En este tutorial Android Bolivia 🙂 construiremos una sencilla aplicación para realizar llamadas por teléfono, aprenderem...

Mapas con HTML5 – Funciones de pintado – Parte 5

Mapas con HTML5 – Funciones de pintado – Parte 5

En esta penúltima parte, declaramos las funciones que nos permitirán pintar los shapes en el canvas, vamos al grano que...

Convertir objetos java en XML

Convertir objetos java en XML

Continuando con el estudio del meta lenguaje XML (Lenguaje de Marcado Extensible) bastante utilizado en el intercambio d...

ANSI: Colorear consola de salida de Netbeans

ANSI: Colorear consola de salida de Netbeans

Cuando realizamos proyectos java desde Netbeans, usamos System.out.println para imprimir datos en consola (para depurar,...

Comparte lo que sabes

Categorias

Últimas entradas

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp