Cómo utilizar la Terminal

Cómo utilizar la Terminal | Comandos básicos de Bash

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

Visual Studio Code Para Mac

Git para Windows

Git para macOS

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

Comando chmod en terminal
Comando chmod en terminal

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

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:

Modo de edición de VIM

Para guardar los cambios en el documento abierto de vim, se presiona la tecla de Escape y se escribe el comando :w

Guardar cambios en vim

Para salir de vim se presiona la tecla Escape y se escribe el comando :q

Salir de vim

El cambio al salir de vim queda cargado en el documento como se ve en la captura relacionada:

Guardar cambios en vim

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:

Pantalla de Inicio nano

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 y salida en consola

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 operador mayor que

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

Comando cat con doble operador mayor que

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
comando grep búsqueda

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
Comando diff

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
Comando head en terminal

Ejemplo comando tail en terminal

$ tail -n1 documento.php
Ultima frase  archivo documento.php

$ tail -c3 documento.php
php
Comando tail en terminal

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
Comando cp en terminal

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://www.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://www.configuroweb.com/WhatsappMessenger

quedo al pendiente de cualquier duda, saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.