viernes, 6 de marzo de 2009

describe tableName en sqlite

Llamativamente no hay describe table o show table en sqlite.
La solución es la siguiente consulta:

SELECT * FROM sqlite_master;


Bastante feo :(

martes, 24 de febrero de 2009

Packeando un rar en linux

Quería lograr packear en linux un rar con estas características:
  • Compresion Level: Store
  • Volúmenes de 15.000.000
  • Old style volume naming
Para ello me bajé el rar de RARLAB y usé la siguiente línea:

./rar a -m0 -v15000 -vn nombre.rar archivoAComprimir

Link interesante: ReScene

jueves, 12 de febrero de 2009

Cambiando la url del repositorio de svn

Primero tenemos que saber cuál es la URL actual haciendo
$ svn info
Dentro de los campos hay un:
URL: https://url-vieja

Queda ejecutar el siguiente comando:

svn switch --relocate https://url-vieja https://url-nueva

lunes, 9 de febrero de 2009

Montando archivos bin cue

Montando un bin/cue

Primero intenté:
sudo mount -o loop -t iso9660 file.bin /mnt/lala/
Dándome el siguiente error:
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

Para solucionarlo terminé pasando el bin/cue a iso y después montándolo.
Para eso, realicé los siguientes pasos:

sudo apt-get install bchunk
bchunk -v file.bin file.cue salida
sudo mount -o loop salida.iso /mnt/lala/

Listo!

viernes, 9 de enero de 2009

exportando repo en git

Similar a svn export.

git archive master | bzip2 > repo.bz2

en vez de bzip2 se podría usar tar u otro.

miércoles, 7 de enero de 2009

Obtener IP pública rápidamente

Pasteado por dzup1 en #debian-es freenode

echo "tu IP:" `lynx -dump http://www.whatismyip.com.au | grep Your | cut -f 2 -d :`- | tr -d '-'

lunes, 5 de enero de 2009

MySQL a CSV

Forma fácil de dumpear una consulta de mysql a csv:

SELECT * INTO OUTFILE '/tmp/salida'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'
from table;

Se debe ejecutar como root.

jueves, 11 de diciembre de 2008

Cortando archivos en Linux

Me bajé una versión de un capítulo de Heroes de 4.5GB
Heroes S03E12 1080i HDTV DD5.1 MPEG2-CtrlHD.ts para probar en un proyecto con entrada HDMI. El problema es que no entra en un DVD, entonces se me ocurrió cortarlo y meter lo que entre en un dvd y el resto pendrive.
Para hacerlo encontré un programa llamado split.

Cortar
split -bytes=100m path/al/archivo path/al/prefijo
Unir
cat prefijo > nombreDelArchivo

miércoles, 10 de diciembre de 2008

Random shit

nuclear launch detected...

http://www.carloslabs.com/node/16

gracias a mcabral... ;O)

sábado, 6 de diciembre de 2008

Accediendo a gmail desde python

Hace unos días quería acceder a los datos de gmail y me encontré con una lib muy útil: libgmail

Para instalar en debian:
apt-get install python-libgmail

La idea era sacar los datos de mis compras y ventas de mercado libre para meterlo dentro de una base de datos. Teniendo todo los mails de mercado libre en un tag "MERCADO LIBRE" escribí este código:

#!/usr/bin/python
import libgmail

def main():
ga = libgmail.GmailAccount("cuenta@gmail.com", "pass")
ga.login()
folder = ga.getMessagesByLabel('MERCADO LIBRE', True)

for thread in folder:
print '-------------------'
print thread.subject[43:]
for msg in thread:
i = msg.source.find('Nombre:')
print msg.source[i:i+300]
print '-------------------'

if __name__ == '__main__':
main()


Después de un tiempo me trajo la información de cada mail con este formato:

-------------------
-Este es el subject-
Nombre: xxxxxxxxxxx
Apodo: xxxxxxxxxxx
Cantidad: xxxxxxxx
Precio final: xxxxxxxxx
E-mail: xxxxxxxxxx
Tel=E9fono: xxxxxxxxxx
Ciudad: xxxxxxxxxxx
Provincia: xxxxxxxxxx
Pa=EDs: xxxxxxxxxxxx
-------------------
Listo!
Lo único que queda es parsear esa información.
python++