Verificar la shell que estamos usando en nuestro sistema.
Cuando hablamos de shell de Linux/Unix, nos referimos al intérprete de comandos que mediante una interfaz de usuario, es capaz de comunicarse con el núcleo del sistema.
Tenemos a nuestra disposición varios intérpretes de comandos, como ZSH, CSH, KSH, o tal vez el más expandido conocido como BASH. Cada uno tiene sus propias características, pero todos cumplen la misma función, permitirnos la comunicación con el sistema.
La mayoría de distribuciones linux (listar para usar), vienen con bash salvo en raras ocasiones, o que tu mismo hayas mudado de intérprete. En este artículo, vemos como identificar el intérprete que monta tu sistema linux.
Verificar la shell de linux
Verificar la shell que estamos usando
Tenemos a nuestra disposición variadas formas de verificar la shell de nuestro sistema linux, vemos las más conocidas.
Con el comando echo
echo $SHELL # o echo $0
Ejemplo de salidas…
sergio@sololinux:~$ echo $SHELL /bin/bash sergio@sololinux:~$ echo $0 bash
Con el comando ps
El comando ps en su formato básico, nos dice el intérprete utilizado con su pid.
ps
Ejemplo…
sergio@sololinux:~$ ps PID TTY TIME CMD 2119 pts/0 00:00:00 bash
También se permiten los siguientes atributos.
ps -p $$
sergio@sololinux:~$ ps -p $$ PID TTY TIME CMD 2119 pts/0 00:00:00 bash
Con el archivo /etc/passwd
En /etc/passwd podemos visualizar los atributos del usuario.
grep "^$USER" /etc/passwd
Se imprimirá algo similar a…
sergio@sololinux:~$ grep "^$USER" /etc/passwd sergio:x:1000:1000:sergio,,,:/home/sergio:/bin/bash
Con el comando lsoft
No es tan atractivo visualmente, pero también nos proporciona la información que buscamos.
lsof -p $$
Ejemplo…
sergio@sololinux:~$ lsof -p $$ COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 2119 sergio cwd DIR 8,2 4096 4980738 /home/sergio bash 2119 sergio rtd DIR 8,2 4096 2 / bash 2119 sergio txt REG 8,2 1113504 3407879 /bin/bash bash 2119 sergio mem REG 8,2 47568 5248126 /lib/x86_64-linux-gnu/libnss_files-2.27.so bash 2119 sergio mem REG 8,2 97176 5248123 /lib/x86_64-linux-gnu/libnsl-2.27.so bash 2119 sergio mem REG 8,2 47576 5248128 /lib/x86_64-linux-gnu/libnss_nis-2.27.so bash 2119 sergio mem REG 8,2 39744 5248124 /lib/x86_64-linux-gnu/libnss_compat-2.27.so bash 2119 sergio mem REG 8,2 7129424 1321961 /usr/lib/locale/locale-archive bash 2119 sergio mem REG 8,2 2030544 5248116 /lib/x86_64-linux-gnu/libc-2.27.so bash 2119 sergio mem REG 8,2 14560 5248119 /lib/x86_64-linux-gnu/libdl-2.27.so bash 2119 sergio mem REG 8,2 170784 5248097 /lib/x86_64-linux-gnu/libtinfo.so.5.9 bash 2119 sergio mem REG 8,2 170960 5242896 /lib/x86_64-linux-gnu/ld-2.27.so bash 2119 sergio mem REG 8,2 179079 1713590 /usr/share/locale-langpack/es/LC_MESSAGES/bash.mo bash 2119 sergio mem REG 8,2 26376 1579666 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache bash 2119 sergio 0u CHR 136,0 0t0 3 /dev/pts/0 bash 2119 sergio 1u CHR 136,0 0t0 3 /dev/pts/0 bash 2119 sergio 2u CHR 136,0 0t0 3 /dev/pts/0 bash 2119 sergio 255u CHR 136,0 0t0 3 /dev/pts/0
Verificar las shells disponibles
Para concluir el artículo, identificamos los intérpretes de comandos que tenemos disponibles en nuestro sistema.
cat /etc/shells
Si usas una distribución sin modificaciones, verás algo parecido a lo siguiente.
sergio@sololinux:~$ cat /etc/shells # /etc/shells: valid login shells /bin/sh /bin/bash /bin/rbash /bin/dash
Canales de Telegram: Canal SoloLinux – Canal SoloWordpress
Espero que este artículo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales. Verificar la shell que estamos usando.