| Subcribe via RSS

La consola de Linux – cerrar programas bloqueados

Diciembre 12th, 2006 | 2 Comments | Posted in linux, ubuntu

Si alguna vez algún programa se queda bloqueado hay una forma de cerrarlo desde la consola: usando el comando kill. Este comando tiene esta sintaxis:

kill  

Para averiguar cuál es el proceso que queremos cerrar o matar (¡qué violento!) usamos el comando ps, que muestra la lista de procesos activos:

gorka@homer-desktop:~$ ps -A
  PID TTY          TIME CMD
 5239 ?        00:00:00 mixer_applet2
 5243 ?        00:00:01 notification-da
 5251 ?        00:03:52 firefox-bin
 5255 ?        00:00:02 gnome-terminal
 5260 ?        00:00:03 gnome-screensav
 5261 ?        00:00:00 gnome-pty-helpe

Por ejemplo vamos a cerrar firefox-bin. Su id de proceso (es la primera columna: PID) es el 5251:

kill -9 firefox-bin

Esto cierra el proceso firefox-bin “a lo bruto”, sin darle tiempo a cerrar archivos o vaciar buffers. Menos “brutal” es la opción ‘-15′ que deja tiempo al proceso para realizar todas las acciones de cierre.

En Ubuntu (y en otras distribuciones) podemos hacerlo gráficamente entrando en: Sistema->Administración->Monitor de sistema. Esto abre una ventana en la que se muestra la lista de nuestros procesos y donde podremos cerrar los que nos interese.

La consola de Linux – una potente calculadora

Diciembre 11th, 2006 | No Comments » | Posted in linux

bc es una potente calculadora incluida por defecto en la mayoría de las distribuiciones de Linux y, como la mayoría de programas, puede usarse desde la consola.

Para usar el programa basta teclear bc en la consola y entraremos en su interfaz. Dentro de la interfaz basta teclear las operaciones que queremos realizar. Para salir basta teclear quit. Existe otra forma de hacerlo sin entrar en la interfaz de bc:

echo "4 * 5" | bc

Yo suelo usarla bastante así que me he creado este sencillo script:

echo $1 | bc -l

y lo tengo guardado en un fichero llamado c (de calculadora, sí soy muy vago para teclear) que está en mi PATH para poder llamarlo desde cualquier directorio.

Nota: el -l lo añado para que se cargue la librería matemática que permite usar funciones trigonométricas y logarítmicas.

c 4*5

(la ecuación debe ir sin espacios).

Si te interesa este programa echa un vistazo aquí a la documentación.

OpenP2M en Ubuntu

Diciembre 11th, 2006 | 1 Comment | Posted in ubuntu, uncategorized

Aquí os dejo una pequeña ayuda para los usuarios de OpenP2M en Ubuntu Linux. El programa se instala de manera muy sencilla, basta abrir una consola y teclear:

javaws http://www.glauberpires.com.br/p2m/download/OpenP2M.jnlp

Esto abrirá el instalador y nos dejará un enlace en el escritorio (si así lo deseamos). El uso del OpenP2M es exactamente igual que en Windows.

En algunas ocasiones me ha sucedido que al abrir el OpenP2M se ha quedado bloqueado (y el PC también). Después de rebuscar en foros y no haber encontrado nada se me ocurrió borrar a lo bruto el directorio .java de mi directorio home (está oculto, usar CTRL-H). Supongo que valdría con borrar .java/.deployment/javaws/cache/http pero, dado que no es algo realmente importante y no tengo mucho tiempo, aún no he hecho la prueba. Si alguien se anima que me avise.

En algunas ocasiones los ficheros descargados puede ser que necesiten ser renombrados, para eso yo uso este pequeño script:

rename 's/\.ext1/\.ext2/' *.ext1

(esto cambia la extensión .ext1 a .ext2)

¿Tú no odiabas las matemáticas?

Diciembre 9th, 2006 | No Comments » | Posted in uncategorized

Un interesante artículo (en inglés) en el que Stevey nos recomienda las matemáticas que le conviene conocer a todo buen programador. Aprovecha para dar un “repaso” a los planes de estudio y cuenta por qué las matemáticas que nos han enseñado en nuestra vida no son las más adecuadas.

Buscar la posición de un objeto con Javascript

Diciembre 7th, 2006 | 2 Comments | Posted in html-y-css, javascript

He encontrado en firetree.net un estupendo script que permite conocer la posición de cualquier objeto de una página html.

Es un script muy pequeño que funciona correctamente en, al menos, Firefox, Internet Explorer, Safari y Opera.

Tenemos que agradecérselo a: Peter-Paul Koch y Alex Tingle.

  function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1)
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }

Dónde se guardan los datos de gftp

Diciembre 7th, 2006 | No Comments » | Posted in linux

Si, como me ocurre a mí, tienes en el gftp una larga lista de sitios FTP a los que te sueles conectar y necesitas sincronizar esa lista entre dos ordenadores necesitarás saber dónde se almacenan los datos de ese programa. Es una carpeta oculta llamada .gftp en tu directorio personal. Puedes copiarte la carpeta entera y listo.

La consola de Linux – crear directorios con mkdir

Diciembre 4th, 2006 | No Comments » | Posted in linux

Un comando que seguramente todo el mundo conoce es mkdir, que sirve para crear directorios:

mkdir midirectorio

Sin embargo, mkdir tiene un par de opciones interesante poco conocidas.

Por ejemplo:

mkdir -p miprograma/documentacion/html

Si añadimos la opción -p mkdir se encarga de crear, si no existen, los directorios miprograma y documentacion. Si usaras este comando sin la opción -p obtendrías como resultado un error.

Otra opción que puede resultar interesante es -m, que crea el directorio con los permisos indicados, por ejemplo:

mkdir -m750 miprograma

Creará el directorio miprograma con los permisos 750 (o sea: rwxr-x—).

Diccionario de dudas

Diciembre 4th, 2006 | No Comments » | Posted in uncategorized

Hoy he encontrado esta recopilación de términos que se usan erróneamente y que resuelve unas cuantas dudas: http://www.fundeu.es/esurgente/lenguaes/.

Según indican en su web: “Repertorio de comentarios lingüísticos y aclaraciones de dudas sobre el uso de la lengua española, elaborado por la Fundéu: neologismos, antropónimos, topónimos, gentilicios, transcripciones, traducciones, barbarismos, abreviaturas y usos erróneos.”

Introducción a PHPMailer

Diciembre 3rd, 2006 | 8 Comments | Posted in herramientas-para-tu-web, php

Dado que muchos lo estáis pidiendo me he animado a escribir una pequeña introducción a PHPMailer. Lo primero es descargarnos el archivo con la última versión y descomprimirlo en el directorio de nuestro proyecto, por ejemplo en el directorio phpmailer. Para poder usar PHPMailer basta añadir:

include("phpmailer/class.phpmailer.php");

con la ruta adecuada a PHPMailer.

En este ejemplo, modificación del que aparece en la “web oficial”, se puede ver lo fácil que es usar PHPMailer:

SetLanguage('es','phpmailer/language/'))
{
	echo '

No se ha podido cargar el fichero de idioma adecuado.

';
}

// Introducimos la información del remitente del mensaje
$mail->From     = "remitente@email.com";
$mail->FromName = "Remitente";
$mail->AddReplyTo("info@site.com","Information");
// y los destinatarios del mensaje. Podemos especificar más de un destinatario
$mail->AddAddress("paco@correo.com","Paco Martínez Soria");
$mail->AddAddress("klaatu@correo.com");  // Como se puede ver aquí el nombre del destinatario es opcional
$mail->AddCC("otrodestinatario@correo.com"); // También podemos enviar con copia de carbón
$mail->AddBCC("destiantaariooculto@correo.com"); // y copia de carbón oculta

// Establecemos los parámetros del mensaje: ancho y formato.
$mail->WordWrap = 50; // ancho del mensaje
$mail->IsHTML(true); // enviar como HTML

// Añadimos el mensaje: asunto, cuerpo del mensaje en HTML y en formato
// solo texto
$mail->Subject  =  "Asunto del mensaje";
$mail->Body     =  "Este es el mensaje en formato HTML";
$mail->AltBody  =  "Y este es el mensaje de solo texto"; // Para los queno pueden recibir en formato HTML

// Añadimos los adjuntos al mensaje
$mail->AddAttachment("/var/tmp/file.tar.gz"); // podemos añadir un adjunto directamente
$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // O podemos indicar un nuevo nombre para el adjunto.

if(!$mail->Send())
{
   echo "El mensaje no se ha podido enviar

";
   echo "Error: " . $mail->ErrorInfo;
   exit;
}
echo "El mensaje se ha enviado correctamente";
?>

Este ejemplo no funcionaría si el servidor que usarmos es SMTP. En ese caso tendríamos que añadir estas líneas al principio:


$mail->IsSMTP();                                   // enviar vía SMTP
$mail->Host     = "smtp1.site.com;smtp2.site.com"; // Servidores SMTP
$mail->SMTPAuth = true;     // activar la identificacín SMTP
$mail->Username = "jswan";  // usuario SMTP
$mail->Password = "secret"; // clave SMTP

Otras funciones interesantes:

- ClearAddresses () – Borra todos los destinatarios del campo ‘TO’, es decir, todos los destinatarios que se han añadido con la función AddAddress.

- ClearAllRecipients () – Borra todos los destinatarios TO, CC y BCC.

- ClearAttachments () – Borra los adjuntos.

Existe información más completa, en inglés, con todas las funciones disponibles en:

http://phpmailer.sourceforge.net/docs/

Consejos para emprendedores – Controla tu tiempo

Diciembre 3rd, 2006 | 7 Comments | Posted in emprendedores

Para un emprendedor uno de los bienes más importantes y escasos es el tiempo. La correcta gestión del tiempo puede suponer la diferencia entre el éxito y el fracaso (evidentemente no es el único factor). Aquí van unos consejos que considero que pueden ser muy valiosos:

- Establece plazos para tus proyectos y actúa como si tuvieras un jefe al que responder. El problema de trabajar para uno mismo es que puede relajarse con los plazos y los proyectos se alargan indefinidamente. Para la planificación de un proyecto puede venir muy bien alguna herramienta como Planner o MS Project.

- No cambies de tarea constantemente. Cada cambio de actividad tiene un tiempo de posicionamiento (buscar documentos, herramientas, centrar la mente, “cambiar el chip”).

- Reserva parte de tu tiempo para trabajar y establece horarios de atención para tus clientes. La atención a los clientes es muy importante, pero si no se tiene cuidado pueden “robarte” todo tu tiempo. Puedes pasarte toda una mañana atendiendo a tus clientes y no haber trabajado nada. Cada llamada o visita supone, en muchos casos, pérdida de concentración y, probablemente, dejar la tarea que estabas llevando a cabo para hacer otra totalmente diferente. Las mejores horas para trabajar son las primeras de la mañana, más o menos hasta las diez.

- Ponte un horario y respétalo y no trabajes en exceso. Recuerda que no eres una máquina, también necesitas descansar.

- Levántate temprano. Esta es una opinión muy subjetiva y está relacionada con las dos anteriores. Las primeras horas de la mañana, aparte de que no hay nadie para distraerte, son las que la mente está más despierta y el trabajo se hace mucho más rápido. Como digo es una opinión muy personal que me he formado a lo largo del tiempo.

- Descansa algún día a la semana. Aunque creas que no lo necesitas un cambio de aires es muy conveniente. Despejar la mente y relajarte de vez en cuando te ayudará a enfrentarte a los problemas que seguramente te surgirán.

- Dedica algo de tiempo para el deporte. Es muy relajante además de ser muy sano. Patina, anda en bici, pasea… cualquier cosa vale.

- Evita las reuniones. Las reuniones telefónicas son un “sumidero de tiempo” increible. Si te proponen una reunión procura evitarla y convertirla en un contacto por email o por teléfono. Preferiblemente la primera opción; el email tiene la ventaja de que puedes meditarlo y responderlo cuando te conviene a tí y no te interrumpe.

- Haz las llamadas cuendo tengas un rato libre. – No hagas las llamadas en los momentos en que estás más activo, resérvalas para un momento de relajo como forma de tomarte un pequeño respiro. Intenta hacer todas las llamadas pendientes a la vez.

- No consultes el correo electrónico cada 10 minutos. Te o aseguro, se pierde mucho tiempo así.

Hace unos días escribí sobre algunas herramientas para el control del tiempo que pueden resultarte interesantes.