Comando find de Unix (GNU/Linux)

Existe un comando en sistemas Unix muy útil para poder encontrar ficheros con determinadas
características, es el comando find.

  • Para buscar los ficheros más grandes del sistema:
    find / -size +100000k -exec ls -lh '{}' ;
  • Para buscar los ficheros modificados recientemente (Último día):
    find / -mtime 0 -exec ls -lh '{}' ;
  • Para buscar los ficheros modificados recientemente (Último minuto):
    find / -mmin 0 -exec ls -lh '{}' ;

Para buscar ficheros de una fecha especifica, se puede intentar con lo siguiente:

$ ls -l | grep “`date ‘+%b %d’` 09:[1-5][0-9]“

que buscaría los ficheros modificados hoy entre las 9.00 y las 9.59… aunque seguro que hay alguna forma mejor de hacer esto. ¿A alguien se le ocurre?

Curriculum Vitae Profesional con LaTeX

He encontrado un paquete llamado moderncv que ofrece una plantilla bastante profesional para realizar un curriculum vitae.

Para instalarla:

sudo apt-get install texlive-latex-extra texlive-fonts-recommended lmodern

  • texlive-latex-extra: contiene el paquete moderncv y muchos más.
  • texlive-fonts-recommended: contiene las fuentes marvosym necesarias para el funcionamiento de moderncv.
  • lmodern: contiene las fuentes lmodern.

Enlace

Instalar Latex en Ubuntu

Para instalar LaTeX en tu Ubuntu, debes de instalar los siguientes paquetes:

sudo apt-get install texlive-latex-base

si necesitáis más paquetes para LaTeX como ifpdf, podéis instalarlo así:

sudo apt-get install texlive-latex-recommended

Para instalar la fuente marvosym tienes que instalar lo siguiente:

sudo apt-get install ttf-marvosym

Para instalar el paquete ldesc2e.sty, primero nos debemos descargar el fichero, y luego guardarlo en el siguiente directorio:

/usr/share/texmf-texlive/tex/latex/ldesc2e

/usr/share/texlive/texmf/tex/latex/ldesc2e

para que se guarden los cambios, ejecutaremos

sudo texhash

Manual para instalación

Y para posteriormente crear ficheros en PDF, te puede ayudar este documento.

Configurar Ubuntu

Primero, instalamos las aplicaciones necesarias, para ello quizás tengamos que añadir estas líneas en el fichero /etc/sources.list:

deb http://archive.ubuntu.com/ubuntu/ hardy main universe multiverse restricted
deb-src http://archive.ubuntu.com/ubuntu/ hardy main universe multiverse restricted

ó simplemente con actualizar los repositorios a través de apt-get valdría:

sudo apt-get update

ahora ya podemos instalar las aplicaciones:

sudo aptitude install thunderbird ssh wireshark vim-full tilda htop screenlets netspeed sensors-applet samba traceroute unrar

También sería interesante habilitar la cuenta de root.

Comprimir Ficheros en Linux

Hay varias formas de comprimir ficheros en Linux.

La que yo uso normalmente es la siguiente, ya que sirve tanto para comprimir ficheros, como directorios:

Ficheros .tar.gz

  • Comprimir: # tar -czf archivo.tar.gz ficheros
  • Descomprimir: # tar -xvzf archivo.tar.gz
  • Ver contenido: # tar -tzf archivo.tar.gz

Instalar PHP PEAR en Linux

PHP Pear, es un framework, que contiene un montón de librerías con código en PHP, y que puede ser muy útil para ciertas necesidades de funciones en PHP.

En este caso, voy a explicar cómo instalarlo desde la línea de comandos.

Primero descargamos el paquete PEAR.

El paquete se descarga así:

wget http://pear.php.net/get/PEAR-1.4.3.tar

Una vez descargado, procedemos a descomprimirlo:

tar xvf PEAR-1.4.3.tar

Ya está instalado. Ahora debemos de incluir las siguientes líneas que indican la ruta donde se ha instalado PEAR, en los ficheros que usen las librerías de PEAR.

$RUTA = "/home/pepito/pear";
ini_set("include_path",ini_get("include_path").":".$RUTA);

¡Y ya está!

Ahora si quisieramos usar un generador de hojas excel, existe un pequeño tutorial en español.

Enviar ficheros comprimidos con netcat

Enviar un fichero entre dos máquinas:

$ netcat -l -p 5555 > salida.txt
$ netcat remote.host 5555 -q 0 < entrada.txt

Enviar un fichero comprimido entre dos máquinas:

$ nc -l -p 5555 | gunzip > salida.txt
$ cat entrada.txt | gzip | nc remote.host 5555 -q 0

Enviar un directorio comprimido entre dos máquinas:

$ netcat -l -p 3333 -v > backup.tgz
$ tar -czvpf - /path/to/files | netcat -q 0 remote.host 3333

Más info.