csh

  • En el momento de configurar la cuenta de root, durante la instalación de FreeBSD 10, se le asigna la shell csh o tcsh. Esta es la shell que utilizan tradicionalmente los sistemas FreeBSD y OS X. Para muchos linuxeros puede resultar bastante incómoda ya que, por ejemplo, no permite borrar utilizando la tecla suprimir (sólo se puede borrar con backspace). Ya sea por costumbre o gusto, posiblemente uno de los primeros cambios luego de la instalación del sistema sea instalar el intérprete de comandos Bash.

    En este artículo voy a explicar cómo se cambia la shell de un usuario en FreeBSD, ya que editar directamente el archivo /etc/passwd no es una opción viable.

  • La shell Bash maneja diferentes descriptores de archivo (file descriptors) para implementar las redirecciones. El descriptor número 0 corresponde con la entrada estándar (stdin), el 1 corresponde con la salida estándar (stdout), y el 2 con la salida estándar de errores (stderr). A diferencia de Bash, csh (intérprete de comandos por defecto en sistemas FreeBSD) no posee un descriptor de archivo (2) para la standard error (stderr). Aunque de todas formas es posible redirigir las salidas estándar y de errores a archivos separados.

  • El intérprete de comandos tcsh es la shell por defecto en los sistemas FreeBSD y OS X. Se trata de una shell UNIX basada en el lenguaje C Shell (csh). En esta breve entrada voy a demostrar cómo configurar variables de entorno en tcsh, lo que equivale a exportar una variable en Bash utilizando la sintaxis export VARIABLE="VALOR".

  • La consola (intérprete de línea de comandos) CSH, instalada por defecto de los sistemas FreeBSD, tiene una funcionalidad muy interesante y útil que consiste en buscar en el historial cuando se utiliza la flecha hacia arriba.

  • Hoy tuve la necesidad de obtener los nombres de host asociados a todas las direcciones IPv4 de una red clase C (ejecutando consultas inversas a los servidores de nombre). Por lo tanto decidí implementar un pequeño script que realice dicha tarea utilizando la shell tcsh, intérprete de comandos por defecto en sistemas FreeBSD. Aunque luego lo traduje a Bash, para compartirlo con aquellos usuarios de GNU/Linux.

  • Anteriormente demostré cómo era posible implementar un acceso SSH como root, a pesar de que estuviera deshabilitada la opción PermitRootLogin en la configuración del demonio. Ahora voy a demostrar cómo es posible lograr el mismo comportamiento en sistemas FreeBSD y OpenBSD utilizando doas en vez de sudo.

  • La versión de sed que incluyen las distribuciones GNU/Linux permite reemplazar cualquier cadena por saltos de línea (enter) utilizando la secuencia de escape \n. Sin embargo, la versión BSD no soporta estas secuencias de escape al momento de reemplazar (sí al momento de buscar, parte izquierda de la secuencia de sustitución).

    En este breve artículo explico cómo lograrlo en FreeBSD y OpenBSD.