Este blog, me ha sido en más de una ocasión, mi ayuda memoria ideal. En otras tantas ocasiones, un link al mismo me permitió “ayudar al prójimo”, más bien, ahorrarme tiempo de utilización de cuerdas vocales y ahorrar al otro el fastidio de escucharme.
Por tal motivo, y ante un requerimiento del primer tipo (como “ayuda memoria”) quiero publicar algo que frecuentemente utilizo (o que cuando no es tan frecuente mi fragil memoria olvida):
¿Cómo hacer un loop infinito en un intérprete de comandos (sh, ksh o similar)?
Pongamos unas comillas al “infinito”, todo concluye al fin, nada puede escapar a un Ctrl+C o a un break (produce un abandono inmediato) dentro del bucle.
En medio de las vacaciones de verano del hemisferio sur, y entre tantas pobres noticias del mercado futbolero y automotriz; aparece en mis feeds GNOME 3 – Made of Easy. Fue esa lectura la que me hizo recordar de Gnome 3, la esperada novedad que debería salir a la luz no antes de Abril del presente año… aunque de ahí a que llegue a las principales distros de Linux habrá que esperar algo más.
“El nuevo escritorio de GNOME eleva la elegancia a un nuevo nivel. Simple, bello, GNOME3 ha <barrido> el desorden existente para llegar a un escritorio sencillo, simple, facil de usar y más hermoso que nunca; con nuevo tema, nueva fuente y animaciones cuidadas.”
No obstante, ansioso, sin poder esperar su lanzamiento hice lo mismo que había echo tiempo atrás, Try it out!. El proceso es sencillo, bajar los fuentes y compilar… cosa que está bien aqui, que se resume en pocos pasos y que de no mediar problemas, apt-get install‘s de por medio se resume en:
Las publicaciones al blog son cada vez más esporádicas, no por eso poco importantes. Es decir, aveces prefiero publicar poco y útil antes que periódico e inservible.
En este caso, quiero aportar a este blog (mi humilde base de conocimientos) una forma muy sencilla de eliminar archivos de más de N de días de antigüedad en forma automática (ideal para ejecutar por el programador de tareas), algo muy útil para purgar logs o borrar temporales inútiles. En mi caso, fue utilizado para eliminar imágenes periódicas de una cámara IP (JPEG posting) que al final del día unía en un video diario.
Luego de buscar y buscar y estando a punto de escribir un Windows shell script bastante artesanal me encontré con FORFILES, un comando de Windows, que permite de una forma sencilla de seleccionar uno o más archivos y ejecutar un comando sobre los mismos.
Y un día volví… y como no podía ser de otra manera con las clásicas hojas de referencia, para imprimir y tener a nuestro lado en los escritorios.
Como lo más destacado de este post, les dejo una cheatsheet de comandos de UNIX.
Un tip para tener a mano que resuelve las siguientes dos cuestiones:
¿Como conocer mi IP privada y mi IP pública?, esa es la cuestión.
Vamos a ver un pequeño script para lograr este propósito utilizando algunos comandos ya vistos y utilizados en la historia de este blog con varios distintos propósitos (ifconfig, grep, cut, awk, wget, sed)
Casi dos meses después de la última publicación, es necesario dar “señales de vida” del blog, que nunca fue discontinuado… pero que se mantuvo en “pausa” por falta de “inspiración”
Y para volver, que mejor que con un clásico: hacer “cosas” desde la terminal (hoy estoy muy “comillero”)
A las publicaciones de tiempo atrás de Center IM, mp3blaster y Lynx hoy aprenderemos a enviar tweets desde la terminal utilizando cURL-
cURL es una herramienta, que muy probablemente tengas instalado en tu GNU/Linux o BSD, que nos permite enviar a una datos a una URL utilizando los protocolos HTTP, HTTPS, FTP, FTPS, etc.
sed es un “editor de textos” para el filtrado y la transformación de textos. Escribo “editor de texto” entre comillas pues en realidad sed no trabaja con cadenas de caracteres sino con “flujos”, la diferencia con los editores de textos clásicos (interactivos) es que sed acepta como entrada estándar un archivo o cualquier otro stream; resultado que es procesado y devuelto a la salida estándar (vea más acerca de stdin, stdout y stderr aquí)
Este es otro de mis pequeños scripts que suelo utilizar y/o adaptar para diferentes circunstancias. Un script sencillo, escrito para Korn Shell pero fácilmente portable a Bash u otro similar.
Para ser ciertos, más que scripting, este ejemplo es una clase de find, un comando tan potente que casi que nos permite “programar” con find
Antes de pasar a ver el código, comento un poco la necesidad que dió origen a este pequeño ejemplar para que tu puedas interpretarlo y, por que no, adaptarlo a tu necesidad.
La cuestión es así, mis aplicaciones y procesos sin logs no tienen razón de ser, todo se loguea, con fines de detectar anomalías, ver errores de software e incluso para hacer auditorias.
Uno de los objetivos de este blog es que me sirva como ayuda memoria, de echo aquí volqué material al que luego recurrí como referencia. Por tal motivo, se justifica la publicación del siguiente tip (la próxima vez en vez de Googlear recurriré a mi blog, mi base de conocimientos
)
La cuestión es simple, tuve en mis manos por primera vez un móvil con Symbian OS S60 y necesitaba obtener la MAC Address, caso contrario no iba a poder conectarme a mi red doméstica (filtrada por MAC dicho sea de paso).
La cuestión fue simple, estando el teléfono en stand by, hay que marcar *#62209526# número equivalente a la cadena alfanumérica a *#MAC0WLAN#