Renombrar masivamente archivos
for i in IMG_*;do mv $i image${i#IMG_} ;done
Renombra los archivos IMG_01.jpg, IMG_02.jpg en image01.jpg, image02.jpg.
Arreglar caracteres especiales en Subsonic
Hace poco instale Subsonic en mi NAS para escuchar desde el trabajo cualquiera de mis discos. Lo que mas me gusta de Subsonic, es que tengo toda mi coleccion de CDs en FLAC y hace el transcoding a mp3 muy rapidamente para el streaming.
El unico problema que tenía era que algunos temas con caracteres especiales se veian mal, y en estos casos Subsonic no puede hacer el transcoding (porque busca archivos que no existen).
Al final, la solucion fue sencilla : en el archivo de arranque de Subsonic, “subsonic.sh”, agregue la linea siguiente arriba del archivo :
export LANG=en_US.UTF-8
(mi sistema esta en ingles, si lo tienen en español es_ES.UTF-8 debería funcionar tambien).
Reiniciar Subsonic, y todo funciona bien
Borrar archivos viejos de más de x días
find /path/* -mtime +10 -exec rm {} \;
borra los archivos viejos de más 10 días.
reemplazar texto en varios archivos
grep -lr -e ‘xxx’ * | xargs sed -i ’s/xxx/yyy/g’
xxx es el texto a reemplazar y yyy el nuevo texto.
Montar imagen iso
mount /path/to/image-file.iso /mnt/cdrom -o loop
donde path/to es la ruta de ubicacion de la imagen ISO.
Backup del sistema
Backup :
tar cvpjf backup.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys /
Restore :
tar xvpfj backup.tar.bz2 -C /
wget con resume
Como me lo pidió un amigo después de leer lo del scp con resume, ahora vemos el wget con resume. Buscando en la man page, encontré el comando siguiente :
wget -c http://ar.php.net/get/php-5.2.3.tar.bz2/from/this/mirror
La opción -c sirve para el resume cuando se corta una transferencia.
scp con resume
Para poder usar scp con resume, útil en el caso de que se corte la conexión durante la transferencia de muchos datos, agregamos en nuestro archivo .bashrc la linea siguiente :
alias scpr="rsync --partial --progress --rsh=ssh"
Entonces, para transferir un archivo con resume, usaremos scpr en lugar de scp. Eso es posible gracias a nuestro amigo rsync, quien tiene esa capacidad de resume.
Copiar archivos desde un servidor a otro con rsync
Si necesitan mover muchos archivos desde un servidor a otro, rsync por ssh es una de la formas más convenientes :
rsync -vaz -e ssh archivos_a_mover usuario@servidor_distante:/directorio_para_archivos/
Opciones :
-v : verbose
-a : modo archive, ver manpage
-z : modo compresión
Como crear archivos de cualquier tamaño?
Se puede crear archivos de un tamaño determinado en Linux usand el comando dd. Por ejemplo :
$ cd /tmp
$ dd if=/dev/zero of=archivo.txt bs=1024 count=1048576
Este comando crea un archivo archivo.txt de 1GB (1024 * 1048576 bytes).
- if – archivo de entrada
- of – archivo de salida, el archivo que queremos crear
- bs – tamaño de block en bytes
- count – cantidad de blocks de tamaño bs
Para más información sobre el comando dd, consultar la man page