Operadores de línea de comandos
Los operadores de línea de comandos son caracteres especiales que te ayudan a controlar cómo funcionan los comandos y cómo interactúan entre sí. Piensa en ellos como el "pegamento" que conecta distintos comandos o indica adónde debe ir la información. Estos operadores resuelven problemas habituales, como guardar la salida de un comando en un archivo, ejecutar varios comandos en secuencia o usar la salida de un comando como entrada de otro al trabajar en la terminal.
Sin operadores, tendrías que copiar y pegar manualmente la salida entre comandos o ejecutar cada comando por separado, comprobando si salió bien antes de ejecutar el siguiente. Los operadores hacen que tu flujo de trabajo sea más eficiente y ayudan a automatizar tareas repetitivas.
Operadores de redirección (>, >>)
Los operadores de redirección toman la salida de un comando y la envían a un archivo u otro destino, en lugar de mostrarla por pantalla. Esto viene bien para guardar resultados de comandos o registros.
Aquí va una regla fácil para recordar la diferencia:
>: 1 flecha = conservar 1 cosa = conservar lo mío>>: 2 flechas = conservar 2 cosas = conservar lo tuyo y lo mío
Escribir un fragmento de texto en un archivo:
echo "Hello, World!" > hello.txtAñadir los últimos 5 commits al final de un archivo de registro de cambios:
git log -5 --oneline >> CHANGELOG.mdOperador pipe (|)
El operador pipe toma la salida de un comando y la usa como entrada de otro. Esto crea una canalización donde los datos fluyen de un comando al siguiente, como agua por tuberías conectadas.
Seleccionar commits que contienen la palabra "fix" en su mensaje:
Linux/macOS:
git log --oneline | grep "fix" | sortPowerShell:
git log --oneline | Select-String "fix" | Sort-ObjectOperadores lógicos (&&, ||)
Los operadores lógicos, parecidos a los de los lenguajes de programación, controlan el flujo de ejecución de comandos según el éxito o el fallo de los comandos anteriores.
&&: ejecuta el siguiente comando solo si el comando anterior terminó correctamente (código de salida 0).||: ejecuta el siguiente comando solo si el comando anterior falló (código de salida distinto de cero).
Preparar archivos y crear un commit solo si la preparación sale bien:
git add . && git commit -m "Update documentation"Intentar traer cambios e integrarlos; si falla, traer solo información del remoto:
git pull origin main || git fetch origin.gitignoregit checkoutgit configgit taggit worktree