jueves, 19 de febrero de 2009

Autocompletar en el intérprete de python

Este es un truquito para poder autocompletar la línea en el intérprete de python usando tabulador al mejor estilo bash.

Lo primero que hay que hacer es abrir el intérprete de python:

[esteban@esteban ~]$ python
Python 2.5.2 (r252:60911, Jan 4 2009, 17:40:26)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>


luego ejecutar las siguientes líneas:

>>> import rlcompleter
>>> import readline
>>> readline.parse_and_bind("tab: complete")

Listo, ahora al presionar "tab" se completará la líea o mostrará las sugerencias posibles:

>>> readline. <TAB PRESSED>
readline.__doc__ readline.get_line_buffer( readline.read_init_file(
readline.__file__ readline.insert_text( readline.set_completer(
readline.__name__ readline.parse_and_bind(
>>> readline.

El problema es que cada vez que se quiera tener "tab completar" se va a tener que
hacer ese procedimiento.
Para dejar esa configuración por defecto basta con setear la variable de
entorno PYTHONSTARTUP apuntando a un archivo que tenga esas líneas.

Por ejemplo yo creé un archivo en mi home llamado .pystartup donde se
encuentran esas 3 líneas.
luego:

[esteban@esteban ~]$ export PYTHONSTARTUP=~/.pystartup

Ahora cada vez que abran el intérprete tendrán tab-completion.

martes, 10 de febrero de 2009

No funcionan mis scripts en cron.daily (cron.hourly, cron.weekly)

1) Es el archivo ejecutable? (Esto no me consta que juegue en contra, pero por las dudas, no sobra)
sudo chmod a+x script.sh
El a+x es para setearlo ejecutable para todos, tambien sirve u+x, g+x y o+x, siendo respectivamente para el owner, el grupo y el resto de los users.

2) Este es el que me olvidé mas de una vez, el archivo no puede tener caracteres extraños en el nombre, no estoy seguro de si es solo letras y numeros, pero si me consta que no puede tener puntos. Supongo que es un error común.

sudo mv /etc/cron.daily/script.sh /etc/cron.daily/script