En este muy práctico y sencillo tutorial aprenderás cómo utilizar la Terminal con unos comandos básicos de Bash.
El conocimiento de Terminal es muy necesario en tu gestión diaria como desarrollador, muchas veces necesitarás hacer implementaciones en servidores sin entorno gráfico.
El terminal es muy rápido, seguro, eficiente en la gestión de procesos del día, más que todo a nivel del Backend. Se que encontrarás muy entretenidos estos comandos que vas a poder procesar desde un ordenador Windows sin ningún inconveniente.
Aplicaciones previas para saber cómo utilizar la terminal de manera avanzada
Es necesario antes de cualquier cosa, para seguir este tutorial de manera sencilla instalar VS Code y Git ya que todos los comandos los vamos a ejecutar con Git Bash, la recomendación es instalar estas aplicaciones con todos los parámetros por defecto, seleccionar todos los checks de Visual Studio Code añadirlo a la PATH, agrégale todas las opciones posibles.
Aplicaciones para descargar
Los enlaces de las aplicaciones que nos enseñan cómo utilizar la terminal son los siguientes:
Visual Studio Code Para Windows
Comandos básicos desde Git Bash para usar en la terminal
Los comandos son los siguientes:
A continuación va el compendio donde voy a explicar 18 comandos de alta relevancia y utilidad para trabajar con Servidores desde la terminal:
pwd
Este comando en inglés resume present working directory y cuando lo ejecutas en consola te dice la ubicación donde te encuentras en se momento:
$ pwd
/c/xampp/htdocs
ls
Te lista los archivos y directorios contenidos en tu ubicación actual, por ejemplo yo estoy en la carpeta htdocs y tengo los siguiente archivos y directorios listados:
$ ls
academia control_inventario.rar img
alquiler_automoviles control_inventario_1 index.php
alquiler_motos crud laravel
applications.html crud-ajax-datatable libreria
archivos_en_linea dashboard libros_en_linea
archivos_online deportes libros_pdf_en_linea
asistencia 'errores comunes banco w' llenar_tabla_json
asistencia_empleados errores_comunes_bw materiales
biblioteca escrapeargoogleconphp pagos
biblioteca_1 escrapinggoogle pos_2021
biblioteca_sqlite farmacia prueba
bitnami.css favicon.ico restaurante
carrito_compras generador_codigo sistema_monitoreo
clientes gestion_clientes suscribcion
compartir_foto gestion_inventario webalizer
configuroweb helpdesk xampp
control_inventario html5
cd
Con este comando y la ruta especificada podemos movernos a donde queramos y para devolvernos a una carpeta previa se requiere poner el ..
En el ejemplo a continuación ingreso desde la ubicación en la que estaba a mi carpeta de documentos:
cd C:/Users/Usuario/Documents
Ya en la ubicación de documentos si utilizo el comando pwd, me mostraría lo siguiente:
$ pwd
/c/Users/Usuario/Documents
Este comando con el .. se devuelve a la carpeta anterior, tal como se ilustra en el siguiente ejemplo:
$ cd ..
Al utilizar PWD confirmo que ahora estoy en la carpeta de Usuario
$ pwd
/c/Users/Usuario
chmod
Este comando es uno de los más importantes de los que hablaré hoy, incluso podría tener su propia publicación.
Con chmod se pueden cambiar los permisos para acceder a los archivos, con este tipo de configuración se implementan por ejemplo los accesos a hosting, donde podemos leer y escribir pero no tenemos poderes de ejecución sobre las maquinas virtuales.
Los usuarios de hosting compartido a pesar de que no pueden ejecutar instrucciones a nivel de las máquinas virtuales, para los archivos que suben al hosting, si tienen plenos permisos de lectura, escritura y ejecución.
El comando chmod se basa en el sistema octal y parametriza el documento con un número de tres dígitos, por ejemplo para dar permisos completos de lectura, escritura y ejecución, a un usuario, su grupo y otros se escribe el 777
Como en el siguiente ejemplo:
$ chmod 777 documento.php
Si quisieras que sobre un documento en específico, los demás usuarios del grupo ni los otros usuarios fuera del grupo solo puedan leer el documento, no puedan escribir, ni ejecutar el número quedaría de la siguiente manera:
$ chmod 744 documento.php
En el enlace a continuación se habla con mucho más detalle del comando chmod, es una página de documentación de Oracle
https://docs.oracle.com/cd/E19620-01/805-7644/x-5lbib/index.html
La siguiente imagen ilustra las configuraciones posibles del comando chmod
Se pueden ver los permisos específicos de los documentos en un directorio con el comando ls -l en el ejemplo a continuación se muestra el cambio en la configuración de permisos aplicados al archivo documento.php
$ ls -l
total 0
-rw-r--r-- 1 Usuario 197121 0 dic. 17 15:35 documento.php
mkdir
Este comando te permite crear directorios, se pueden crear varias carpetas al mismo tiempo como en el ejemplo en el que creo al mismo tiempo los directorios dir1, dir2, dir3 y dir4
$ mkdir dir1 dir2 dir3 dir4
$ ls
dir1 dir2 dir3 dir4 documento.php
En adición se pueden crear carpetas con diferentes permisos con la bandera -m, una bandera es un parámetro que en cierta manera modifica la acción del comando principal.
La bandera -m en este contexto se utiliza como el comando chmod
En este ejemplo específico el comando quedaría de la siguiente manera:
$ mkdir -m 744 dir5
echo
Este comando imprime en pantalla lo que quieras escribir, como en el ejemplo a continuación que se muestra un mensaje de “hola mundo por consola”.
$ echo hola mundo por consola
hola mundo por consola
touch
Este comando crea un archivo si no existe ninguno con el nombre especificado y generalmente ingresa en modo edición del archivo creado.
En el ejemplo a continuación se crea un nuevo archivo llamado archivo.php Se puede ver con el comando ls como aparece listado el nuevo archivo archivo.php en la ubicación desde donde se genera el comando:
$ touch archivo.php
$ ls
archivo.php dir1 dir2 dir3 dir4 dir5 documento.php
vim
Vim es un editor de texto que funciona desde la terminal y que viene incrustado en git bash
Si quieres saber más de vim o instalarlo puedes acceder al siguiente enlace:
https://www.vim.org/download.php
Vim como editor de código es tan popular que bien vale una publicación independiente para explicarlo ampliamente, ya que excede los límites de este tutorial donde se explica a nivel básico cómo utilizar la Terminal.
Con solo escribir vim y el nombre del documento a editar en el terminal y presionas enter, accedes a un ambiente de edición del documento para trabajar con vim.
Con el siguiente tramo de código al presionar enter accedes a un ambiente de edición como la captura a continuación:
$ vim archivo.php
Pantalla de Inicio de vim
Esta imagen es vim en su pantalla de inicio con el archivo.php, sin embargo en este estado aun no se puede editar el documento archivo.php aun, se debe presionar i, para que se habilite el cursor, como se ve en la pantalla a continuación:
Para guardar los cambios en el documento abierto de vim, se presiona la tecla de Escape y se escribe el comando :w
Para salir de vim se presiona la tecla Escape y se escribe el comando :q
El cambio al salir de vim queda cargado en el documento como se ve en la captura relacionada:
nano
nano es un micro editor muy práctico y sencillo de utilizar, funciona muy similar a vim, solo ejecutas nano y el nombre del archivo que te interesa editar. Puedes ver su documentación oficial en el siguiente enlace:
https://www.nano-editor.org/docs.php
En el siguiente ejemplo se como el acceso al mismo documento archivo.php con el comando nano
$ nano archivo.php
La pantalla de inicio de inmediato entra en modo edición y los comandos disponibles de para escribir, pegar texto, reemplazar entre otros, se ven disponibles con atajos de teclado, como en la imagen a continuación:
Salir es muy sencillo, solo basta con presionar CTRL + X el sistema consulta si se van a guardar los cambios o no, se elige la opción correspondiente, se presiona enter y de ese modo queda el documento editado.
cat
Este comando se utiliza para concatenar la salida en consola del terminal, si se utiliza con el operador > se sobre escribe la información de un documento al otro, con los operadores de mayor que juntos >> se une lo citado en ambos documentos.
Para el ejemplo voy a utilizar dos archivos archivo.php con la información que ya se le ingresó desde vim y desde nano en consola y documento.php con la frase “Aprende cómo utilizar la Terminal”
$ cat archivo.php documento.php
Comando cat con operador mayor que >
Este comando sobre escribe la información de un archivo en el otro, sin escribirlo en consola
$ cat documento.php > archivo.php
En la captura a continuación se muestra como se sobre escribió la información de documento.php en archivo.php:
Comando cat con doble operador mayor que >>
Este comando une la información de los archivos uniendo la información, sin sobre escribir la información de un archivo en el otro, como se muestra en el ejemplo a continuación
grep
Este comando es de búsqueda, según parte de palabra clave, encuentra las líneas que coinciden la palabra de búsqueda por ejemplo ‘ento’ y muestra las líneas que coinciden
$ grep ento archivo.php
Frase documento.php
diff
Este comando compara dos archivos línea por línea he imprime las líneas diferentes por cada línea. como en el ejemplo a continuación:
$ diff documento.php archivo.php
1c1
< Frase documento.php
\ No newline at end of file
---
> Frase archivo.php
\ No newline at end of file
head y tail
Este par de comandos extraen las primeras y últimas líneas de un documento o caracteres de un documento, respectivamente, basta con enumerar el número de línea o carácter con las banderas -n para líneas y -c para caracteres, como se ve en el ejemplo a continuación:
Ejemplo comando head en terminal
$ head -n1 documento.php
Frase documento.php
$ head -c3 documento.php
Fra
Ejemplo comando tail en terminal
$ tail -n1 documento.php
Ultima frase archivo documento.php
$ tail -c3 documento.php
php
rm
Con este comando se eliminan archivos desde consola, es uno de los comandos más delicados de los que he hecho referencia en este tutorial donde se explica cómo utilizar la Terminal a nivel general.
Este comando también puede eliminar directorios, requiere de unas banderas adicionales y con mayor profundidad trataré el tema en publicaciones posteriores, por el momento va un ejemplo del comando rm en terminal.
$ rm eliminar_archivo.php
clear
Este comando borra lo escrito en pantalla, limpia la pantalla, su función es tan sencilla que no requiere ningún otro parámetro.
cp
El comando cp copia archivos de un directorio a otro, solo requiere la ruta y realiza el proceso como en el ejemplo a continuación:
cp archivo.php dir5/archivo_copiado.php
Estos han sido 18 comandos útiles de la terminal que seguramente en tu camino de programación encontrarás, en este blog encontrarás más que todo aplicaciones desarrolladas en PHP, MySQL, Python y Javascript de libre distribución en el enlace a continuación:
Así como aplicaciones de pago, que te podrían interesar:
https://configuroweb.com/tag/premium/
Si requieres contactarme por cualquier duda que llegues a tener, lo puedes hacer directamente a mi Whatsapp en el siguiente enlace:
https://configuroweb.com/WhatsappMessenger
quedo al pendiente de cualquier duda, saludos.