Recursos y utilitarios en línea para aprender Shell Scripting

Recursos en línea para aprender Shell Scripting

Por lo general cualquier usuario promedio de un Sistema Operativo libre del Tipo GNU/Linux ha tenido contacto con la Terminal del Sistema. Y muchos manejan en términos medios la misma para muchas funciones típicas como (des)instalar, actualizar o borrar cualquier configuración o aplicación en el mismo. Otros un poco más avanzados, técnicos o administradores de Sistemas o Servidores hacen un uso más avanzado de la misma.

Muchas veces saber o dominar los lenguajes de terminal es muy útil debido a que cuando nos toca trabajar en un ambiente avanzado donde por lo general hay un montón de configuraciones especiales (avanzadas) o tareas programadas que otros administradores escribieron, y que ahora deben ser gestionadas para resolver algún problema, mejorar algo ya existente, dicho conocimiento nos es de gran ayuda. Y si podemos contar con recursos en linea que nos faciliten la tarea de comprender o dominar los mismos pues mejor aún.

Introducción

Realmente aprender Shell Scripting o el uso avanzado de los lenguajes de terminal se hace realmente importante e imprescindible, para poder cumplir eficaz y eficientemente con esos nuevos requerimientos o retos que se nos demandan cuando deseamos hacer cosas muy avanzadas en o con nuestros Sistemas Operativos GNU/Linux.

Y ya sea uno un usuario normal, avanzado o un SysAdmin seguramente en alguna oportunidad seguramente nos hemos visto en la tarea de entender algún Script de Shell creado por otra persona, que no está bien escrito, o que está en una estructura lógica o de redacción, nada fácil de entender, o en el peor de los casos, con ordenes de comandos, atípicas, antiguas, ineficientes, o escritas de forma torpe y confusa.

Por eso, esta serie de recursos en linea que mencionaremos a continuación esperamos sirvan para la construcción de mejores scripts, sin tener que pasar por una tediosa y difícil tarea de averiguar como lo codifico o porque fue codificado así, y por qué ya no funciona.

Pero antes es bueno aclarar algunos conceptos importante antes de utilizar dichos recursos, sobre todos para aquellos usuarios o interesados básicos o que no dominan esta área tan útil de los Sistemas Operativos GNU/Linux:

¿Que es la Shell?

Shell que en Español significa CONCHA (coraza, cubierta, protección). Aplicado este termino en Sistemas Operativos se refiere al interprete de comandos del Sistema Operativo. Por lo general, es una interfaz de texto de altas prestaciones, y que se manifiesta en forma de Terminal (Consola) y que sirve esencialmente para 3 importantes áreas de trabajo, que son: Administrar el Sistema Operativo, Ejecutar aplicaciones e interactuar con ellas, y Servir de entorno básico de programación.

¿Que es el Bash Shell de GNU/Linux?

Es un programa informático cuya función consiste en interpretar órdenes. Está basado en la shell de Unix y es compatible con POSIX. Fue escrito para el proyecto GNU y es el intérprete de comandos por defecto en la mayoría de las distribuciones de Linux.

¿Que es un Script de Shell?

Es un archivo de texto, que contiene una serie de comandos para shell, que el sistema ejecuta ordenadamente, de arriba abajo. Para editarlos, tan solo hace falta un editor de textos, como Emacs, Vi, Nano, entre muchos existentes. Se guardan con extensión “.sh” (o sin ella, en algunos casos) y se ejecutan desde la Shell mediante el comando: sh nombre de script.sh. Los scripts, se comportan de igual manera que los comandos de la shell.

¿Que es Shell Scripting?

Es la técnica (habilidad / destreza) de diseñar y crear Script (archivo de automatización de tareas) mediante un Shell (preferiblemente) de un Sistema Operativo, o un Editor de Texto (Gráfico o Terminal). Este es un tipo de lenguaje de programación que generalmente es interpretado.

Es decir, que mientras la mayoría de los programas son compilados (codificados), porque son convertidos permanente a un código especifico (especial) antes de que puedan ejecutarse (proceso de compilación), un script de shell permanece en su forma original (su código fuente en forma de texto) y son interpretados comando por comando cada vez que se ejecutan. Aunque cabe la posibilidad de que los scripts pueden ser compilados también, aunque no es usual.

Recursos en Línea para aprender Shell Scripting

Editores Bash

Estos Editores de Bash en línea permiten que cualquiera pueda escribir cómodamente sus scripts o los script de otros directamente en el navegador para probarlos (ejecutarlos) y así comprobar si funcionan o no correctamente. Cada uno de los siguientes tiene sus propias bondades o limitaciones por lo que probar cada uno y descubrir como funcionan le harán la vida más fácil al desarrollar o adoptar scripts.

Algunos de ellos permiten probar otros lenguajes que no son de Terminal GNU/Linux sino lenguajes de programación más diversos y avanzados, otros vienen solo en Ingles y otros son multilenguajes. Otros permiten cosas como configurar los argumentos de la línea de comando y las entradas stdin, otros exigen que el usuario se registre otros no, algunos permiten la colaboración en tiempo real.

Otros son muy sencillos y básicos y otros tienen interfaces avanzadas llenas de utilidades. Algunos llegan a proporcionar material didáctico para aprender a programar cualquier lenguaje mientras ejecutan y prueban sus códigos.

Online Bash Compiler

JDoodle

Paiza.IO

ShellChek

Repl.it

RexTester

LearnShell

Otros útiles terminales en línea son:

Utilitarios

CMD Challenge

Esta web nos permite someter nuestros conocimientos del Shell Scripting a una serie de retos (pruebas) basadas en nuestra experiencia para solventar tareas comunes y avanzadas con dicho lenguaje. Entre las cosas buenas que tiene es la biblioteca de soluciones propuestas por cada participante a cada reto, lo cual la convierte en una excelente base de datos de conocimientos para nuestros propios scripts.

Command Line Fu

Otra web útil que nos permite registrar y explorar una enorme base de datos de línea de comandos ofreciéndonos sin costo alguno los beneficios de la sabiduría de otros en la Terminal (CLI). Todos las lineas de comandos se pueden comentar, discutir y votar hacia arriba o hacia abajo, lo que la hace muy útil a la hora de estudiar o utilizar lo más valorado por la propia comunidad.

Explain Shell

La web siguiente nos permite analizar líneas de comando para detectar errores o validar y optimizar su estructura, logrando así una forma muy practica de auto-enseñanza para cada usuario según el material explorado por si mismo.

Tutoriales, Guías y Wikis

Videotutoriales

Si quieres aprender un poco más sobre Shell Scripting en nuestro propio Blog, puedes darle un vistazo a nuestras otras publicaciones sobre el tema, haciendo clic aquí: Scripting en DesdeLinux


Categorías

GNU/Linux

Administrador de Servidores y Telecomunicaciones con certificación internacional de Linux: 1.- Certified Linux Administrator (CLA) 2.- Certified Linux Operator (CLI)

2 comentarios

  1.   juliuco nikelado dijo

    se agradece este artículo y me parece muy adecuado e instructivo , hace teimpo estaba esperando uno sobre editores de bash . Estoy muy interesado en ampliar este lenguaje de programación para linux

  2. Gracias por tu comentario positivo y me alegro que te haya gustado!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.