Una guía ilustrativa para presentarle el concepto de Shell en Linux y el popular shell BASH
Un ‘Shell’ es una ‘Utilidad Interactiva’ proporcionada por sistemas Linux. Cada vez que hablamos de la línea de comandos en entornos Linux o Unix, nos referimos al ‘Shell’. Funciona como un intermediario entre el usuario y el sistema que toma la entrada del usuario y la alimenta al sistema.
El shell de Linux proporciona una forma para que los usuarios iniciar programas o administrar y manipular los datos en el sistema Linux. El shell facilita como medio para que el usuario interactúe con el sistema a través de comandos.
El símbolo del sistema es la parte más fundamental y principal del Shell en los sistemas Linux y Unix. El carácter $ es el símbolo predeterminado en la mayoría de las distribuciones de Linux y más específicamente en las distribuciones que usan Bourne Shell. El símbolo del sistema actúa como una interfaz donde puede introducir los comandos. Estos comandos se interpretan y se ejecutan en el núcleo. El comando Shell es el primer programa que se ejecuta cuando se inicia por primera vez una ventana de terminal.
En este breve artículo, aprenderá algunos datos básicos sobre los Shells en Linux y también se abordará la pregunta sobre el shell predeterminado en Linux.
Tipos de Shell
En Linux, hay dos tipos principales de shell: Bourne Shell y C-type shell. Ambos tipos de cáscara tienen algunas ventajas y también inconvenientes.
Veamos las especificaciones de ambos tipos en las siguientes secciones.
Bourne Shell
Bourne Shell fue escrito por Stephen Bourne en AT& T Bell Labs. Bourne Shell (sh
) fue el primero en ser introducido en los sistemas Linux. Puede encontrar este shell instalado como /bin/sh
en la mayoría de las distribuciones de Linux.
Aunque Bourne Shell era bastante popular y preferido en ese entonces, pero tenía algunos inconvenientes. La capacidad de recordar comandos anteriores faltaba en este shell. sh
carecía de muchas capacidades modernas como alias y, por lo tanto, lo hacía menos efectivo.
- Denotado como
sh
- El carácter
$
es el indicador predeterminado.
A continuación se muestran las subcategorías de Bourne Shell.
- Bourne Shell (
sh
) - Corn Shell (
ksh
) - Bourne De Nuevo Shell (
bash
) - Carcasa POSIX(
sh
)
Shell de tipo C
El shell de tipo C fue creado usando el lenguaje de programación C por Bill Joy. C-Shell o ‘csh
‘ se ve como una actualización sobre el Shell de Bourne (sh
). csh
introdujo muchas características nuevas como el historial de comandos y los alias que faltaban en el Shell de Bourne.
- Denotado como
csh
- El carácter
%
es el indicador predeterminado.
Aunque era una actualización sobre el shell Bourne, tenía pocos desafíos. También un problema destacado con csh
fue que requería que el usuario tuviera conocimiento previo del lenguaje de programación C, ya que fue construido sobre la base del lenguaje C.
A continuación se muestran las subcategorías de los Shells de tipo C.
- Shell C (
csh
) - Cáscara de TENEX / TOPS C(
tcsh
)
En los sistemas Linux, puede encontrar diferentes shells disponibles en su sistema usando el comando cat
. La información sobre los shells se encuentra en el directorio /etc/shells
. Utilice el siguiente comando para encontrar los detalles sobre los shells.
cat /etc/shells
Salida:
gaurav@ubuntu:~$ cat /etc/shells# /etc/shells: valid login shells/bin/sh/bin/dash/bin/bash/bin/rbashgaurav@ubuntu:~$
El Shell Predeterminado En Linux
Para responder a la pregunta » ¿Cuál es el shell predeterminado en Linux?», la respuesta más apropiada sería el’ BASH
‘ (Bourne Again Shell). BASH
es el shell más popular y, por lo tanto, se encuentra en la mayoría de las distribuciones de Linux como el shell predeterminado.
Para verificar su shell predeterminado en Linux, puede usar el siguiente comando.
echo $SHELL
Salida:
/bin/bash
Esto significa que el shell actualmente en uso en mi sistema es el shell BASH
.
Puede comprobar la versión actual de BASH
en su sistema Linux utilizando el siguiente comando:
bash --version
Características De BASH Shell
BASH
es compatible con versiones anteriores con Bourne Shell (sh
). BASH incluye muchas características destacadas de Korn Shell (ksh
), así como de C-Shell (csh
).
BASH ofrece muchas características nuevas que estaban ausentes en sus predecesores. Y eso, sin duda, hace que el BASH shell sea una excelente mejora con respecto a sus predecesores. Muchas características nuevas como comodín, canalización, terminación de pestañas son las mejoras significativas que hacen de BASH un shell preferido como el predeterminado para la mayoría de las distribuciones de Linux.
Veamos algunas características notables de Bash shell.
Historial de comandos: Este sencillo comando puede ahorrarle el esfuerzo de volver a escribir un comando largo. La función de Historial de comandos recuerda los comandos introducidos anteriormente, que se pueden navegar a través del terminal con las teclas de flecha.
Edición en línea de comandos: Esta función se ha introducido recientemente con BASH. Permite al usuario moverse libremente en la línea de comandos de izquierda a derecha y de derecha a izquierda. Esta navegación en la terminal puede parecer normal ahora, pero fue una mejora muy significativa con respecto a sus predecesores.Alias
: Esta es una característica derivada del shell-C. Permite a los usuarios escribir solo el nombre corto o el comando. El shell luego traduce este comando corto al comando más largo.
Arreglo unidimensional: Los arreglos 1D en BASH permiten una fácil referencia de los datos. La manipulación de las listas de datos también es posible.
Archivos de inicio: Los archivos de inicio son los scripts que Bash lee y ejecuta cuando se inicia. Cada archivo está asignado a una tarea específica.
Seguridad del entorno: BASH le ofrece una característica extraordinaria de ‘Modo restringido’. Un BASH
que comienza con el nombre rbash
permite que el shell funcione en el modo restringido.
Debido a todas estas características notables, el shell bash es un shell ampliamente preferido en sistemas Linux y Unix. Es por la misma razón que se acepta como el shell por defecto para la mayoría de las distribuciones de Linux.
Comandos disponibles con el shell de BASH
BASH
shell le ofrece una gran cantidad de comandos para hacer su trabajo sin esfuerzo y controlar todas las acciones en su sistema desde la propia línea de comandos. Los siguientes son algunos de los comandos fundamentales BASH
que shell ofrece en las distribuciones de Linux.
Nota: La lista de comandos disponibles en el shell de BASH NO se limita solo a esta tabla. Estos son algunos de los comandos fundamentales utilizados con fines ilustrativos.
Comando | Descripción |
rm |
comando utilizado para eliminar un archivo |
cp |
comando utilizado para eliminar un archivo o directorio |
touch |
comando para crear un archivo vacío |
mkdir |
comando para crear un nuevo directorio |
pwd |
comando para imprimir el nombre del directorio actual de trabajo |
cd |
comando para cambiar el directorio |
Conclusión
Después de analizar todas las características básicas e importantes del shell BASH, podemos concluir que el shell BASH es el shell popular entre las opciones disponibles debido a su naturaleza poderosa, características fáciles de usar y una enorme cesta de comandos que hacen que la experiencia del usuario sea fácil de usar. Además, podemos decir con seguridad que BASH es el shell predeterminado en las distribuciones de Linux.