A este le puse por título TIP por que no es mas que eso: otro ayuda memoria para la posteridad, a saber:

 

  • Tenés dos archivos con texto: archivo1 y archivo2 como en el ejemplo de la captura de pantalla.
  • Necesitás identificar las líneas duplicadas o simplemente restarlas como en el ejemplo y mostrar únicamente las que no se repiten.

 

La única forma que conozco de lograr esto en Bash sin recurrir a complicados regex de la muerte forma mas rápida de lograr esto sin tener que pensar mucho es como tantas otras veces: GREP.  Alguien debería hacerle un pedestal al autor original de grep, sin duda.

Los switchs que vas a utilizar en grep son:

  1. -x  match únicamente si toda la línea coincide.
  2. -f  para en lugar de utilizar stdin o una palabra como argumento, usar un archivo, de a una línea por vez.
  3. -v  para reverse search, restar las líneas que coincidan en archivo2 de archivo1.

 

Utilizar grep en Bash para restar el contenido de un archivo de otro linea a linea en la consola de comando de Linux

Utilizar grep en Bash para restar el contenido de un archivo de otro linea a linea en la consola de comando de Linux

 

Continúa leyendo

TL-DR: Creá una cuenta en OpenDNS, configurala con protección moderada y configurá tu DHCP server para que le asigne los DNS de OpenDNS a todos los dispositivos.

 

Otro título sugerido: Una de nerds con hijos en edad de navegar por internet y de como hacer para protegerlos de toda la mierda a la que podrían estar expuestos voluntaria o accidentalmente.

 

Prefacio: Sabés que estás viejo cuando empezás a tener este tipo de problemas, y sabés que sos un nerd de mierda cuando ni tuviste que encontrar la solución por que la conocías de antemano.

 

En tu casa hay niños, tuyos o ajenos y ya navegan por internet:

  • ¿Cómo hacer para que no caigan por error en una página pornográfica?
  • ¿Cómo evitar que te llenen el navegador de adware y popups?
  • ¿Como evitar realmente que se infecten con algún virus de mierda tratando de descargar el pack de gorras para Minecraft?
  • ¿Como etc etc etc? (con una lista que sigue hasta el infinito).

 

Y se pone peor: no se trata solamente de como protegerlos evitando que naveguen por sitios de mierda mientras usan la computadora, también tenés que tener en cuenta que navegan desde sus tablets, iPads, smart TVs, consolas de video juegos, etc. Sumale a eso que navegan desde su teléfonos, (o desde el tuyo, y al que me diga que no le presta el teléfono al pendejo lo cago a piñas).

El problema se agrava cuando se trata de mas de un niño que hay que tener bajo el radar. Intentar mantener libre de virus y mierdas a razón de tres o mas dispositivos por cada niño se puede volver bastante tedioso y me consta.

Suponiendo siempre que no todos ustedes son unos nerds de mierda como yo, me pareció que podría ser de utilidad divulgar como es que la estoy piloteando actualmente. Como resolví el problema, antes de que pase a ser un problema realmente.

 

Y como siempre, esta va para la posteridad y para todo aquel que quiera habitar esta tierra de nadie que es la internet.

 

Continúa leyendo

 

Otro título sugerido: La lógica detrás del include/exclude de RSYNC, que no es tan obvia.

Otro: Rsync, la puta que te parió rsync.

 

De lo fácil o difícil que puede resultar hacer un backup con Linux, dependiendo de como lo mires.

De lo fácil o difícil que puede resultar hacer un backup con Linux, dependiendo de como lo mires.

 

Vá uno cortito y útil. No tan obvio y medio complejo de encontrar en la primera página de Google a menos que seas hábil Googleador, pero después te comés un garrón de la gran flauta: Como ejecutar Rsync para copiar archivos, pero únicamente determinados tipos de archivo, basando la selección en la extensión que tuvieran. Parece fácil, si.

Para el versado seasoned sysadmin Linuxero está será bastante obvia, no obstante, hoy la tuve que usar de nuevo por vez número mil y no me anduvo a la primera. No me acrodaba específicamente la sintaxis y terminé Googleando. Como siempre que me pasa esto me lo agendo para la posteridad, acá estoy de nuevo, y así se hace:

 

rsync -av --dry-run --include '*/' --include '*.php' --exclude '*' source/dir/ target/dir/

 

¿Bastante obvio, no? El de arriba va con un –dry-run para que puedas examinar la salida del comando. Si te resultó satisfactorio y no te mandaste ninguna cagada, sacale el –dry-run para que los archivos se copien efectivamente y si te molesta el output por pantalla, sacale la «v» de verbosity, quedando:

 

rsync -a --include '*/' --include '*.php' --exclude '*' source/dir/ target/dir/

 

¿Te sirvió? Pagame un café.

 

 

Va uno cortito y fácil para la posteridad: No se puede instalar Ethereum (eth o cpp-etherum, el client Ethereum escrito en C++, no confundir con geth que es lo mismo pero Golang based) debido a que oficialmente, solo Ubuntu se encuentra soportado, al menos por ahora.

 

Ethereum Logo - Ethereum en español

 

Si seguiste la documentación oficial, la guía de instalación dice que hagas:

 

apt-get install software-properties-common
add-apt-repository -y ppa:ethereum/ethereum
apt-get update
apt-get install eth

 

Que anda bien, hasta que llegas al penúltimo punto en donde te encontrás con que:

Failed to fetch http://ppa.launchpad.net/ethereum/ethereum/ubuntu/dists/jessie/main/binary-amd64/Packages 404 Not Found

 

Para que luego en el último punto te encuentres con que:

E: Unable to locate package ethereum.

Continúa leyendo