Al operar un sistema operativo Linux, como hemos visto anteriormente, debes usar un shell, una interfaz que te da acceso a los servicios del sistema operativo. Conocer los comandos básicos de Linux nos servirá para interactuar de forma mucho más eficiente con el sistema.
La mayoría de las distribuciones de Linux utilizan una interfaz gráfica de usuario (GUI) como shell, principalmente para proporcionar facilidad de uso a sus usuarios.
Con la siguiente lista de comandos básicos ya podrás desenvolverte y realizar las funciones básicas en un sistema Linux. Ahora veremos los comandos básicos por encima, pero poco a poco durante el curso iremos practicando y profundizando en sus funciones.
Un comando es una instrucción específica dada a una aplicación informática para realizar algún tipo de tarea o función.
Los diferentes sistemas operativos como Windows, Linux, Android, o macOS disponen de una serie de comandos básicos para realizar operaciones simples y directas, que se utilizan a través de una consola o intérprete de comandos.
Los comandos no solo están disponibles en un sistema operativo, sino que también se utilizan en aplicaciones o programas. Cada software puede disponer de sus propios comandos internos para realizar tareas específicas.
En Linux, un comando es un programa o utilidad que se ejecuta en la línea de comandos. Una línea de comandos es una interfaz que acepta líneas de texto y las procesa en forma de instrucciones para tu ordenador.
Cualquier interfaz gráfica de usuario (GUI) no es más que una abstracción de los programas de línea de comandos. Por ejemplo, cuando cierras una ventana haciendo clic en la «X», hay un comando que se ejecuta detrás de esa acción.
Un flag es una forma de pasar opciones al comando que se ejecuta. La mayoría de los comandos de Linux tienen una página de ayuda que podemos llamar con la flag -h. La mayoría de las veces, las flag son opcionales.
[comando -h]
Puedes invocar flags utilizando guiones (-) y guiones dobles (–), mientras que la ejecución de los argumentos depende del orden en que los pase a la función, esta sintaxis también la podemos ver en el modo ayuda o en el manual del comando.
Para ver el manual de cualquier comando simplemente utilizamos man seguido del comando del que queremos más información.
man [comando]
man whoami
Usa el comando pwd para encontrar la ruta del directorio (carpeta) de trabajo actual en el que te encuentras. El comando devolverá una ruta absoluta (completa), que es básicamente una ruta de todos los directorios que comienzan con una barra diagonal (/) Un ejemplo de una ruta absoluta es /home/nombredeusuario.
En el siguiente ejemplo ejecutaremos el comando pwd desde el directorio principal y vemos como nos devuelve /home/firox, en vuestro caso, reportará el usuario con el que esteis registrados:
pwd
Ahora vamos a realizar el mismo comando desde la raíz del sistema:
cd Fotos
Otro escenario es si deseas ir a un directorio completamente nuevo, por ejemplo, /home/nombredeusuario/Películas. En este caso, debes escribir cd seguido de la ruta absoluta del directorio:
cd /home/nombredeusuario/Películas
Hay algunos atajos para ayudarte a navegar rápidamente:
Como nota al margen, el shell de Linux distingue entre mayúsculas y minúsculas. Por lo tanto, debes escribir el nombre del directorio de forma exacta.
El comando ls se usa para ver el contenido de un directorio. Por defecto, este comando mostrará el contenido de tu directorio de trabajo actual.
Si deseas ver el contenido de otros directorios, escribe ls y luego la ruta del directorio. Por ejemplo, ingresa ls /home/nombredeusuario/Documentos para ver el contenido de Documentos.
Hay variaciones que puedes usar con el comando ls:
cat archivo.txt
Aquí hay otras formas de usar el comando cat:
cat > nombredearchivo : Crea un nuevo archivo.
cat nombredearchivo1 nombredearchivo2>nombredearchivo3 : Une dos archivos (1 y 2) y almacena la salida de ellos en un nuevo archivo (3).
cat nombredearchivo | tr a-z A-Z> salida.txt : Convertir un archivo a mayúsculas o minúsculas.
cp [Archivo Copiado] [Ruta del Archivo Nuevo]
cp [Archivo Copiado] .
cp /home/user/Archvo1 ./ArchivoUno
mv archivo.txt /home/nombredeusuario/Documentos .
En el caso anterior estaremos moviendo el archivo.txt que se encuentra dentro de Documentos hasta el directorio actual en el que nos encontramos el cual se representa con un punto.
Para cambiar el nombre de los archivos, el comando de Linux es:
mv nombreviejo.ext nombrenuevo.ext
mkdir nambreDirectorio
Si necesitas eliminar un directorio, usa el comando rmdir. Sin embargo, rmdir solo te permite eliminar directorios vacíos.
rmkdir nambreDirectorio
rmkdir rutaDirectorio
El comando rm se usa para eliminar directorios y el contenido dentro de ellos. Si solo deseas eliminar el directorio, como alternativa a rmdir, usa rm -r.
Nota: Ten cuidado con el comando rm -r y verifica en qué directorio te encuentras. Este comando elimina todo y no se puede deshacer.
rm nambreArchivo
rm /home/user/desktop/nambreArchivo
rm nambreArchivo1 nombreArchivo2
rm {nambreArchivo1|nombreArchivo2}
rm -r nambreArchivo
rm *
El comando touch te permite crear un nuevo archivo en blanco a través de la línea de comando de Linux.
Como ejemplo, ejecuta touch /home/nombredeusuario/Documentos/Web.html para crear un archivo HTML titulado Web en el directorio Documentos.
touch nombreArchivo
touch "nombre Archivo"
touch nombre\ Archivo
touch Archivo1 Archivo2
touch Archivo1 "Archvio Dos" Archivo\ Tres
GNU nano es un editor de texto de línea de comandos fácil de usar para sistemas operativos Unix y Linux. Incluye toda la funcionalidad básica que esperaría de un editor de texto regular, como resaltado de sintaxis, múltiples búferes, búsqueda y reemplazo con soporte para expresiones regulares, corrección ortográfica, codificación UTF-8 y más.
nano --version
sudo apt install nano
nano archivoNuevo
Esto abre una nueva ventana de editor y puede comenzar a editar el archivo.
En la parte inferior de la ventana, hay una lista de los atajos de comandos más básicos para usar con el editor nano.
Todos los comandos tienen el prefijo ^ o el carácter M.
Por ejemplo, los comandos ^J significan presionar las teclas Ctrl y J al mismo tiempo. Puede obtener una lista de todos los comandos escribiendo Ctrl+g.
Para guardar los cambios que ha realizado en el archivo, presione Ctrl+o. Si el archivo no existe, se creará una vez que lo guarde.
Si quieres salir de nano presiona Ctrl+x. Si hay cambios no guardados, se le preguntará si desea guardar los cambios.
Para guardar el archivo debe tener permisos de escritura en el archivo. Si está creando un archivo nuevo , necesita tener permiso de escritura en el directorio donde se creará el archivo.
Cuando se inicia nano, lee sus parámetros de configuración del archivo de configuración de todo el sistema /etc/nanorc y de los archivos específicos del usuario ~/.config/nano/nanorc y ~/.nanorc si los archivos están presentes.
Las opciones especificadas en el archivo de usuario tienen prioridad sobre las opciones globales.
Visite la página de nanorc para obtener una lista completa de todas las opciones disponibles.
Similar al comando locate, usando find también buscas archivos y directorios. La diferencia es que usas el comando find para ubicar archivos dentro de un directorio dado.
Como ejemplo, el comando find /home/ -name notas.txt buscará un archivo llamado notas.txt dentro del directorio de inicio y sus subdirectorios.
find [Dirección de Inicio de Búsqueda] [Filtros de Búsqueda] [Búsqueda]
find . -name [Búsqueda]
find / -type d -name [Búsqueda]
find / -size 33c [Búsqueda]
find / -user [NombreUsuario][Búsqueda]
find / -group [NombreGrupo][Búsqueda]
Otro comando básico de Linux que sin duda es útil para el uso diario es grep. Te permite buscar a través de todo el texto en un archivo dado.
Para ilustrar, grep azul notepad.txt buscará la palabra azul en el archivo del bloc de notas. Las líneas que contienen la palabra buscada se mostrarán.
grep -r "\w" 2>/dev/null
grep -v [palabraIncluidaEnLaLínea]
grep -vE [palabra1|palabra2|palabra3]
sudo su
sudo [comando]
sort [archivo.txt]
sort -r [archivo.txt]
sort -n [archivo.txt]
sort -u [archivo.txt]
sort -M [archivo.txt]
Muestra únicamente las cadenas de caracteres imprimibles de un archivo o un output. Esto puede ser muy útil para extraer los fragmentos legibles de un archivo que contenga caracteres codificados o no legibles.
strings nombreArchivo
El comando head se usa para ver las primeras líneas de cualquier archivo de texto. De manera predeterminada, mostrará las primeras diez líneas, pero puedes cambiar este número a tu gusto.
Por ejemplo, si solo deseas mostrar las primeras cinco líneas, escribe:
head -n 5 nombredearchivo.ext
trail -n nombredearchivo.ext
trail -n X nombredearchivo.ext
trail -n 2 nombredearchivo.ext
Para abreviar diferencia, el comando diff compara el contenido de dos archivos línea por línea. Después de analizar los archivos, genera las líneas que no coinciden. Los programadores a menudo usan este comando cuando necesitan hacer modificaciones al programa en lugar de reescribir todo el código fuente.
La forma más simple de usar este comando es:
diff archivo1.ext archivo2.ext
Es otro comando de Linux, utilizado para cambiar los permisos de lectura, escritura y ejecución de archivos y directorios. Como este comando es bastante complicado, puedes leer el tutorial completo (en inglés) para ejecutarlo correctamente.
diff archivo1.ext archivo2.ext
Usa el comando ping para verificar tu estado de conectividad a un servidor. Por ejemplo, simplemente ingresando ping google.com, el comando verificará si puedes conectarte a Google y también medirá el tiempo de respuesta.
Como un terminal equivalente al Administrador de tareas en Windows, el comando top mostrará una lista de los procesos en ejecución y la cantidad de CPU que utiliza cada proceso. Es muy útil monitorear el uso de los recursos del sistema, especialmente para saber qué proceso debe terminarse porque consume demasiados recursos.
¿Confundido sobre la función de ciertos comandos de Linux? No te preocupes, puedes aprender fácilmente cómo usarlos directamente desde el shell de Linux mediante el comando man. Por ejemplo, al ingresar man tail se mostrarán las instrucciones manuales del comando tail.
Este comando se usa para mover algunos datos a un archivo. Por ejemplo, si deseas agregar el texto «Hola, mi nombre es John» en un archivo llamado nombre.txt, debes escribir: echo Hola, mi nombre es John >> nombre.txt.