16 abr 2013

Como contar el número de líneas de varios archivos

Supongamos que tenemos una montaña de archivos con datos y todos terminan con la extensión .dat. Para verificarnos que todos están igualmente formateados podemos, por ejemplo, contar el número de líneas para saber si todas son iguales. En linux un comando tan simple y sencillo como este, puede salvarnos de muchos apuros:

ls *.dat | xargs wc -l
para eso es necesario tener instalado el programita xargs (en debian: aptitude install xargs ). En el comando anterior:
  • ls *.dat nos arroja todos los archivos que terminan con la extensión .dat
  • Los resultados se pasan para el comando xargs por un tubo (en inglés pipe, y se escribe como una rayita vertical |)
  • xargs ejecuta, para cada archivo .dat, el siguiente comando wc -l que cuenta las líneas de un archivo.

En la pantalla tendrás algo como esto:

53 r2=1.900_resultados.dat
8 r2=1.950_resultados.dat
53 r2=2.000_resultados.dat
53 r2=2.100_resultados.dat
53 r2=2.050_resultados.dat
Ufa! vean la segunda línea, hemos encontrado un problema antes de que se nos presentara. Houston,no problemo!

Ahora supongan que la lista anterior no tiene 5 archivos, sino muchos más. Sería tortuoso buscar línea a línea, para ver cual de todos los archivos tiene más o menos que 53 líneas.<

Vamos a hilar más fino y hacer una modificación que nos arroje únicamente los nombres de los archivos que tengan una cantidad diferente de líneas:

ls *.dat | xargs wc -l | grep -v '53 r2'
En la última modificación, grep va a buscar todos los resultados anteriores que tengan 53 r2, la cadena de caracteres que identifica todos los archivos "buenos" (53 es el número de línea y r2 son los dos primeros caracteres de la ruta del archivo). Con la opción -v le decimos a grep, que invierta la búsqueda y nos muestre los casos que NO contienen la cadena anterior.

22 nov 2012

Como quitar esos correctores molestos del iceweasel/firefox

Como linuxero adicto a lo Debian uso solamente Iceweasel, que no es más que Firefox con otro logo y otro nombre. Así que este pequeño apunte sirve también a los usuarios de Firefox que están cansados de encontrar entre la lista de correctores de ortografía una lista enorme de diferentes variedades del español (o del inglés) que no sirven para nada.

Seria diferente si los diccionarios entre las diferentes variedades dialectales del español si estas fueran distintas. Pero no! todas apuntan a un mismo archivo, así que da igual si seleccionas el español de Colombia o el de Nueva Guinea.

Primero, es bueno usar tu gestor de paquetes (aptitude o synaptic) y hacer una búsqueda usando la palabra spell. Esa búsqueda te llevará por varios paquetes de lenguas que tal vez ni conozcas. Puedes borrarlas y recuperar un poco de espacio en disco. También puedes repetir el paso anterior haciendo una búsqueda por l10n y desinstalar los paquetes de lenguas que no te sirvan.

15 nov 2012

Instalando Debian Wheezy (Testing) en mi Lenovo 3000 N200

Para poder usar la wifi fue necesario instalar firmware-iwlwifi que esta en los repositorios non-free y contrib (habilitar ambos).

Al despertar, después de dormir o hibernar, la pantalla se quedaba negra. Claramente el computador estaba funcionando correctamente excepto por el video. Incluso, si conectaba mi portátil al televisor (S-Video), lograba ver y utilizar mi escritorio a través de la TV. Siguiendo las instrucciones de Debian [1][2][3], instalé los drivers para mi tarjeta gráfica (GeForce Go 7300) siguiendo las instrucciones de [3] y sin ninguna variable $VERSION

El siguiente problema era que Gnome me pedía la contraseña cada vez que resumía después de dormir. Para eso seguí estas instrucciones [4] y ejecuté:

gsettings set org.gnome.desktop.lockdown disable-lock-screen 'true'

Ahora el problema es que la identificación automática no sirve. Según las configuraciones, de gnome mi usuario debería entrar sin contraseña cada vez que inicio el compu. Pero no es así. Vamos a ver cómo lo resuelvo....

Actualización:


Ahora que el Wheezy se volvió la versión estable de Debian, varios meses después (mayo de 2013), vuelvo a instalarlo. Ningún problema excepto el video y el acceso a internet. Para el video instalo los drivers de Nvidia de la misma manera que antes (ver arriba) y para la wifi instalo firmware-iwlwifi como la vez anterior y todo va bien. El problema ahora es la ethernet que no me funciona.
Miro en el site de lenovo y no encuentro mucha información sobre el modelo de la tarjeta de red, simplemente que es una Broadcom. Miro en blogs y páginas personales y encuentro que es una Broadcom BCM5906M 10/100. Por otro lado lspci no me da ninguna información sobre la tarjeta de red por cable, solo la de wifi. Al final la solución fue editar el archivo /etc/NetworkManager/NetworkManager.conf y cambiar la opción managed de false por true. Quedando así:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

Luego, como root, reinicio el NetworkManager:

service networ-manager restart
y  ahora el NetworkManager me permitirá activar la ethernet. Aún no sé, si debería desactivar nuevamente la opción managed. Ya lo descubriré más adelante.

Mi camino recorrido