domingo, 23 de mayo de 2010

Print screen de la pantalla activa

Una bobada monumental!! Pero no se por qué nunca recuerdo como era la combinación de teclas. Y así, cada vez que tengo que sacar un screenshot en Windows y no tengo ganas de andar recortando la pantalla que quiero, escribo en google: "printscreen active window"... y siempre arroja la misma respuesta... ALT + PRT.SCREEN.
Saludos!

jueves, 13 de mayo de 2010

Django cheat sheet


Esta es una muy buena referencia para quienes trabajan con Django.

Saludos!

lunes, 26 de abril de 2010

Compartiendo carpetas en Virtual Box

Para compartir carpetas entre el file system del sistema operativo que usamos (en mi caso Windows Seven) y el sistema que corre en nuestra maquina virtual (Ubuntu 9.10):
mkdir /media/compartida
sudo mount -t vboxsf compartida /media/compartida

Donde "compartida" es el nombre que le pusimos al recurso compartido.

domingo, 11 de abril de 2010

Leyendo y guardando archivos en Python

Leer un archivo en python es algo muy complicado... casi tanto como este código:


'''
Created on 11/04/2010

@author: Bernardo
@title: Leyendo un archivo csv con dos campos
'''
nombre_archivo = "prueba.csv"
f = open(nombre_archivo,'r')
for linea in f.readlines():
linea_parseada = linea.split(';')
print 'Campo 1: %s' %linea_parseada[0]
print 'Campo 2: %s' %linea_parseada[1]
f.close()


Guardando un archivo... esto es un poco mas complicado


'''
Created on 11/04/2010

@author: Bernardo
@title: Grabando un archivo
'''
nombre_archivo = "salida.txt"
output = open(nombre_archivo,'w')
output.write("Lo que tenga que grabar.")
output.close()


Y finalmente...

'''
Created on 11/04/2010

@author: Bernardo
@title: BernieLogV0.000001
'''
def log_error(message):
error_log = open("Errores.log",'a')
error_log.write(message)
error_log.close()


Es casi infitamente mas sencillo que en Java o C#. No hay que hacer trucos con ningún BufferReader, ni con ningún StreamReader o StreamWriter.

Saludos!

Backupeando una base postgres

A veces Postgres puede ser bastante molesto. Sumado a que la configuración de acceso al mismo (el bendito archivo pg_hba.conf) el sistema de respaldos no siempre es tan intuitivo para el usuario. Quiero decir, utilizando GUIS, como ser el pgadminIII, etc el respaldo de las bases de datos no siempre es trivial. Muchas veces genera errores, conflictos, etc.
De manera que la mejor manera de hacer respaldos de una base de datos postgres a mi criterio es dejar de lados los guis, y utilizar la consola de la siguiente manera:

RESPALDO
Logueo como el usuario que quiere hacer el respaldo
su - postgres

pg_dump nombre_base_de_datos > archivo.dmp

* Es necesario muchas veces tener en cuenta que si nos queremos llevar el respaldo para otro lado el archivo se encuentra en /var/lib/psql

LEVANTAR RESPALDO
Logueo como el usuario
su - postgres

psql -d nombre_base_de_datos -f archivo_respaldo.dmp

Espero sea de utilidad!

Cabe destacar que tanto psql como pg_dump tienen argumentos que pueden investigarse para darle mas flexibilidad a la función, pueden verlos como "man pg_dump".

Saludos,

Agregando reference manager a Microsoft Word

A veces suele ser útil tener algun manejador de referencias de los libros, papers, artículos que se leen para luego hacer referencia a ellos. Reference manager es un programa que permite hacerlo. Una de sus funcionalidades mas importantes, es el "acople" que brinda con Microsoft Word, lo que brinda la posibilidad de cuando se quiere hacer algun tipo de referencia a algún artículo se pueda hacer de manera directa.

Para ello:
1. Utilizando Microsoft Word 2007 vamos a "opciones de word"
2. Avanzadas
3. Ubicaciones de archivos, y allí nos copiamos la ruta de Startup de Word. Luego cerramos Word.
4. Vamos al directorio de instalación de Reference manager
5. Copiamos los archivos RM10Cwyw.dot ; RM10Cwyw.wll (dentro de la carpeta CWYW); al directorio de startup de word.
Y Listo! Se agrega una solapa "Complementos" al menu de Word, que permite la inserción de referencias utilizando bases de datos del refman.

Saludos!

jueves, 8 de abril de 2010

Buen libro de linea de comandos de Linux

En general soy mas amante del "man command" que de libros que hablen de shells y esas cosas. Pero este esta muy bueno, verdaderamente.
Ahi va,

saludos

http://linuxcommand.org/tlcl.php

lunes, 15 de febrero de 2010

Iteradores en python

Una de las cosas interesantes que tiene python es la construcción que permite hacer de iteradores. Desconozco si java lo permite hacer.
Aquí va la implementación:


"Created on 15/05/2010
@author: Bernardo
"
def millon():
i=0
while i < 1000000:
yield i
i+=1


Para llamarlo se hace de la siguiente manera:


f = millon()
print f.next(), f.next()


De esa manera se ahorra construir una lista de un millon de posiciones, reservar espacio, etc, etc. Se van devolviendo los valores en la medida que se necesitan.
Puede usarse:

print dir(f)

De esa manera se ven todas las operaciones asociadas a f.

Saludos!

Comprobar existencia de un archivo en Bash

A veces suele ser útil en los scripts comprobar si un archivo existe, para evitar acciones o tomar otras.
El siguiente código comprueba la existencia de un archivo y muestra en pantalla el correspondiente estado.


#!/bin/bash
FILE=/home/bernie/Escritorio/pp

if [ -e $FILE ]; then
echo El fichero existe
else
echo El fichero no existe
fi


Saludos!

lunes, 18 de enero de 2010

Lo mejor de Cheat-Sheets para Linux

Leo Linux* screw y encuentro esta recopilación de Cheat-Sheets para Linux. Muy buenas por cierto.

LinuxScrew Cheat Sheets

Obtener nombre de la pc a partir de su IP

Comunmente en una red de área local, suele ser útil saber a quién corresponde cada pc. Muchas veces existen IP's reservadas para determinada tarea o lo que sea.
Con el comando: nbtstat -a NUMEROIP, se nos devuelve el nombre de la pc con la IP correspondiente. De esta manera puede ser útil ahorrarnos unos cuantos broadcast de e-mails diciendo "Quién está usando tal o cual IP?".

Saludos!

viernes, 1 de enero de 2010

Listar las carpetas por tamaño en linux

Suele ser útil obtener los tamaños de los archivos de una pc. Muchas veces es necesario borrar ciertos archivos por falta de espacio, o saber cuál es el que ocupa mas, etc. El simple ls (o todos sus sabores ls -al, etc) no devuelve mas que el listado de las carpetas o archivos que se encuentran en un directorio. Para obtener la lista de carpetas ordenadas por tamaño, puede ser útil correr la siguiente línea:

for f in * ; do if [ -d "$f" ]; then du -sh "$f" ; fi done | sort -n

Espero que sea de utilidad!
Saludos!!

Datos del Linux que corre en la PC

Es un buen comando que sirve para obtener la versión del sistema operativo (linux) que está corriendo en una pc.

lsb_release -a

La info que se devuelve es algo así como:

LSB Version: :core-3.0-ia32:core-3.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch
Distributor ID: RedHatEnterpriseAS
Description: Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Release: 4
Codename: NahantUpdate4

A veces suele ser importante (y util) saber que sistema operativo estamos corriendo.
Saludos!