viernes, noviembre 04, 2011

zsh

Soy un perfeccionista, y no puedo evitar invertir una gran cantidad de tiempo en tener las herramientas necesarias.

Cuando empecé a usar FreeBSD me enamoré de tcsh y su aparente simplicidad, específicamente a la hora de hacer un for,

foreach FILE (`find . -name '*.log'`)
gzip $FILE
end
que me parecía bastante más sencillo que el equivalente de bash,
for FILE in `find . -name '*.log'; do gzip $file; done
pero un poco inóptimo porque no puedes en tcsh escribir un foreach en una sola línea.

Aún con algunos problemillas, fui usuario devoto de tcsh durante unos 7 años.

Pero estuve un tiempo confinado al universo de Windows XP (con Cygwin). Algunos problemas de rxvt-native y UTF-8 me empezaron a fastidiar y decidí probar zsh, que aparentemente funcionaba bien con CMD.
Ahí comenzó una etapa de descubrimiento que no ha terminado. Ese mismo for puede hacerse en zsh así:

for FILE in **/*log; do gzip $FILE; done
lo que resulta bastante cómodo; o
foreach FILE (**/*log); gzip $FILE; end
que además de familiar es también muy cómodo.

Así como eso, hay muchas otras bondades ocultas de zsh, un shell que incorpora lo mejor de bash, ksh y tcsh. Soy fan de zsh.

No hay comentarios.:

Publicar un comentario