Trabajar en Linux nunca ha sido simple o fácil, en todo momento nos encontramos con nuevos desafíos que ayudan a mejorar aún más nuestro conocimiento en este sistema operativo.

Sin embargo, no es motivo para sentir miedo y alejarnos sin siquiera intentarlo. El problema es que generalmente las líneas de comando pueden resultar bastante intimidantes para los nuevos usuarios.

Pero queremos invitarte a plantarle cara al CLI. Es la interfaz de línea de comandos y al hablar de CLI hablamos de Bash. En este artículo te daremos una introducción al Bash de Linux sin que tengas que profundizar mucho en la funcionalidad de Bash.

Significa que solo tocaremos puntos simples y concretos que los usuarios experimentados ya seguramente conocen. En esta introducción al Bash de Linux les daremos, por tanto, una visión completamente general.

¿Qué es el Shell?

Antes de comenzar a darte una introducción al Bash de Linux es importante que conozcas los que es un Shell en Linux, o a que nos referimos cuando hablamos de Shell.

Shell el término usado para llamar a los intérpretes de comandos. Por medio de las instrucciones que da el intérprete, el usuario se puede comunicar con el núcleo y ejecutar distintas órdenes, así como también usar herramientas que le permiten controlar el funcionamiento del ordenador.

Los distintos comandos que nos dan estos intérpretes se usan como guiones si los escribimos en ficheros ejecutables y a estos ficheros los llamamos Shell-scripts. Cada vez que un usuario requiere ejecutar varios comandos escribe en un fichero de texto (que previamente estará marcado como ejecutable) todas las operaciones que desea realizar.

Posteriormente el intérprete traducirá todo ese fichero y las realizará.

Un Shell no es precisamente un lenguaje de programación a pesar de que ciertamente estos scripts los programamos allí. Ahora bien, ya podemos pasar a la introducción al Bash de Linux.

Introducción al Bash de Linux

Teniendo claro lo que es el Shell en Linux no toca ahora saber los que significa Bash.

¿Qué es Bash?

Simple, Bash es otro Shell. Este nuevo Shell está basado en el Shell Bourne original creado en los años 70 y lo emula de muchas maneras. Además, agrega también una gran cantidad de características y puede ser ejecutado en muchísimos más sistemas operativos a diferencia del Shell original.

Por tanto, si estás usando alguna de estas distribuciones de Linux como openSUSE, Ubuntu, Fedora, Slackware, Mandriva, cada vez que estés en una consola o tengas un terminal abierto estarás trabajando con Bash.

Ahora bien, dijimos que Bash emula al Shell y sabemos que un Shell es una interfaz de usuario y un intérprete de comandos. Por tanto eso mismo hace el Bash. Es decir, que ejecuta scripts de forma no interactiva.

Aquí los mismos comandos que utilizas en la línea de comandos se pueden juntar y ejecutarse como un programa.

Ciertamente, cabe destacar que Bash no es el único Shell que existe, simplemente es el más popular entre la principales distribuciones de Linux. Bash está disponible para casi cualquier sistema operativo y se puede instalar fácilmente.

Comandos

En esta introducción al Bash de Linux comenzaremos por ejecutar algunos comandos en el Shell. Primeramente, esto será lo que verás si estar conectado como usuario regular.

usuario @ fluffy: ~ $

La mayoría de las distribuciones de Linux configuran el valor predeterminado para mostrar símbolo de $ si has iniciado sesión como usuario normal y el símbolo de # si has iniciado sesión como root. Te mostraremos los comandos básicos que usarás.

Por cierto, es importante que recuerdes que no existe algo como “deshacer” en Bash, así que ten cuidado. Sin embargo, puedes decirle a Bash que intente evitar al menos un error común: “sobrescribir archivos”. Esto lo harás usando el comando set de la siguiente manera.

set -o noclobber

Este “noclobber” le dice a Bash que no debe sobrescribir los archivos existentes. Cuando no se establece noclobber y usas un comando como el que verá a continuación sobrescribirá el archivo de destino:

file cp1 file2

Por lo tanto, si “file2” existe, se sobrescribirá sin comentarios. Ahora bien, si eres muy cauteloso y configuras la opción noclobber terminarás viendo algo como esto:
bash: file2: no se puede sobrescribir el archivo existente

Si no hubiese un “file2”, Bash lo escribiría. Pero como existe un archivo con ese nombre, se niega a sobrescribirlo. Sin embargo, si realmente quieres sobrescribirlo, puedes agregar la opción -f (forzar) a cp:

cp -f file1 file2

Establecer “noclobber” es una buena opción mientras te estás acostumbrando al shell.
A continuación en esta introducción al Bash de Linux te mostramos una lista de los comandos básicos que sin duda usarás:

Comandos Descripción
cat fich1 […fichN] Muestra un archivo
cd [dir] Cambia de directorio
chmod permisos fich Cambia los permisos de un archivo
chown usuario:grupo fich Cambia el dueño un archivo
cp fich1…fichN dir Copia archivos
diff [-e]arch1 arch2 Encuentra diferencia entre archivos
du [-sabr] fich Reporta el tamaño del directorio
file arch Muestra el tipo de un archivo
find dir test acción Encuentra archivos
grep [-cilnv] expr archivos Busca patrones en archivos
head -count fich Muestra el inicio de un archivo
mkdir dir Crea un directorio.
mv fich1 …fichN dir Mueve un archivo a un directorio
mv fich1 fich2 Renombra un archivo
less / more fich(s) Visualiza página a página un archivo
ln [-s] fich acceso Crea un acceso directo a un archivo
ls Lista el contenido del directorio
pwd Muestra la ruta del directorio actual
rm fich Borra un fichero
rm -r dir Borra todo un directorio
rmdir dir Borra un directorio vacío
tail -count fich Muestra el final de un archivo
at [-lr] hora [fecha] Ejecuta un comando más tarde
cal [[mes] año] Muestra un calendario del mes/año
date [mmddhhmm] [+form] Muestra la hora y la fecha
echo string Escribe mensaje en la salida estándar
finger usuario Muestra información general sobre un usuario en la red
id Número id de un usuario
kill [-señal] PID Mata un proceso
man comando Ayuda del comando especificado
passwd Cambia la contraseña
ps [axiu] Muestra información sobre los procesos que se están ejecutando en el sistema
who / rwho Muestra información de los usuarios conectados al sistema
while true; do ls -ltr; date; sleep 60; done Muestra los últimos archivos en lista cada 60 segundos

 

Configuración

Bash tiene varios archivos de configuración que lee cuando se inicia, dependiendo de cómo se inicie. Si comienza como Shell de inicio de sesión, Bash leerá lo siguiente:

/etc/profile
~/.bash_profile
~/.bash_login
~/.profile

Si Bash se está iniciando como un Shell sin inicio de sesión, por ejemplo, cuando abre un emulador de terminal como consola o GNOME Terminal, verá los siguientes archivos:

/etc/bash.bashrc
~/.bashrc

Veamos un simple archivo de configuración de bash:

# Configurar tu editor favorito aquí
export EDITOR=/usr/bin/vim

# Configurar aliases
if [ -f ~/.bash_aliases ]; then 
    . ~/.bash_aliases
fi

¿Preparado para probar Bash?

Dejar respuesta

Please enter your comment!
Please enter your name here