Discusión
Última actualización: 2025-04-03 | Mejora esta página
Sopa de letras
Si el comando para saber quiénes somos es whoami
, el
comando para saber dónde estamos debería llamarse whereami
,
¿por qué es pwd
? La respuesta habitual es que a principios
de los 70, cuando se empezó a desarrollar Unix, cada pulsación de tecla
contaba: los dispositivos de la época eran lentos, y el retroceso en un
teletipo era tan doloroso que reducir el número de pulsaciones para
reducir el número de errores de escritura era en realidad una victoria
para la usabilidad. La realidad es que los comandos se añadieron a Unix
uno a uno, sin ningún plan maestro, por personas que estaban inmersas en
su jerga. El resultado es tan inconsistente como la ortografía roolz uv
Inglish, pero ahora estamos atascados con ella.
Códigos de control de trabajo
El shell acepta algunos comandos especiales que permiten a los
usuarios interactuar con procesos o programas en ejecución. Puedes
introducir cada uno de estos “códigos de control” manteniendo pulsada la
tecla Ctrl
y pulsando a continuación uno de los caracteres
de control. En otros tutoriales, puede que veas el término
Control
o el ^
utilizado para representar la
tecla Ctrl
(por ejemplo, las siguientes son todas
equivalentes Ctrl-C
, Ctrl+C
,
Control-C
, Control+C
, ^C
).
Ctrl-C
: interrumpe y cancela un programa en ejecución. Esto es útil si quieres cancelar un comando que está tardando demasiado en ejecutarse.Ctrl-D
: indica el final de un archivo o flujo de caracteres que estás introduciendo en la línea de comandos. Por ejemplo, antes vimos que el comandowc
cuenta líneas, palabras y caracteres en un archivo. Si escribimoswc
y pulsamos Intro sin dar un nombre de archivo,wc
asumirá que queremos analizar todo lo que escribamos a continuación. Después de escribir nuestra obra magna directamente en el intérprete de comandos, podemos escribir Ctrl-D para decirle awc
que hemos terminado y que nos gustaría ver los resultados del recuento de palabras.Ctrl-Z
: Suspende un proceso pero no lo termina. A continuación, puede utilizar el comandofg
para reiniciar el trabajo en primer plano.
Para los nuevos usuarios del shell, todos estos códigos de control
pueden parecer tener el mismo efecto: hacen que las cosas “desaparezcan”
Pero es útil entender las diferencias. En general, si algo ha ido mal y
sólo quieres recuperar el prompt de tu shell, es mejor usar
Ctrl-C
.
Otros Shells
Antes de que Bash se popularizara a finales de los noventa, los científicos usaban ampliamente (y algunos todavía usan) otro shell, C-shell, o Csh. Bash y Csh tienen características similares, pero sus reglas sintácticas son diferentes y esto las hace incompatibles entre sí. Desde entonces han aparecido algunos otros shells, incluyendo ksh, zsh, y algunos otros; en su mayoría son compatibles con Bash, y Bash es el shell por defecto en la mayoría de las implementaciones modernas de Unix (incluyendo la mayoría de los paquetes que proporcionan herramientas similares a Unix para Windows) pero si obtienes errores extraños en scripts de shell escritos por colegas, comprueba para qué shell fueron escritos.
Configuraciones Bash
¿Quieres personalizar rutas, variables de entorno, alias y otros comportamientos de tu shell? Esta excelente entrada del blog “Bash Configurations Demystified” de Dalton Hubble cubre consejos, trucos y cómo evitar peligros.