- Listar los ficheros de un directorio en duplicado en la misma línea y guardarlos en un fichero. Esto puede ser útil para manipular los fichero. Por ejemplo suponiendo que se tratan de ficheros de audio y queremos un fragmento de 30 segundos de cada pista:
ls *.flac | awk '{ print "ffmpeg -i " $0 " -t 30 fragmento-" $0 }' > fichero-destino
bash fichero-destino
Renombrar ficheros de imágenes a un nombre + un número:
ls *.jpg | awk '{ print "mv \"" $0 "\"imagen" x++ ".jpg" }' > fichero-destino
bash fichero-destinoRenombrar las extensiones de algunos ficheros:
ls *JPG* | awk '{a=$0;gsub(".JPG",".jpg",a); print "mv " $0 " " a }' > fichero-destinobash fichero-destino - Ficheros inmodificables.
lsattr muestra los atributos de un fichero y
chattr los cambia:
chattr +i fichero/directorio (lo hace inmodificable)
chattr -i fichero/directorio (permite la modificación) - Borrando ficheros para una fechada dada:
ls -ld */*/* | grep "jul 10" | cut -c 47-80| xargs rm - Cambiar de png a jpg.
ls *.png | awk '{a=$0;gsub(".png",".jpg",a); print "convert " $0 " " a}' > kk.sh
bash kk.sh - Cambiar la resolución a 300 dpi de una imagen:
convert -units PixelsPerInch imagen -resample 300 imagenresultanteVarios ficheros, convertirlos a jpg, 300 dpi y renombrarlos como una secuencia numérica:
ls * | awk '{print "convert -units PixelsPerInch " $0 " -resample 300 " NR ".jpg" }' > fichero-destino - Matar todos los procesos de un usuario:pkill -u usuario
- Indicar clave con sshpass. Esto nos ahorra esperar para meter la clave en conexiones lentas.
sshpass -p clave ssh ususaro@servidor -p puerto - Sincronizar una carpeta, copiando solo los ficheros que falten o que sean diferentes del original (verficado mediante hash):
rsync -avuc carpeta_origen/ carpeta_destino/ El parámetro -a hace la copia recursiva y preserva los tiempos de modificación, copia los vínculos simbólicos, preserva los permisos, preserva la información de el dueño y el grupo del archivo, preserva los archivos de dispositivo y los archivos especiales.
Los parametors -uc actualizará los contenidos de la carpeta destino en base a la carpeta de origen mediante la comparación del hash de los ficheros.
Mostrando el progreso y mediante un puerto diferente al estándar de ssh:
rsync -avuc -e 'ssh -p 443' --progress carpeta_origen/ host:/carpeta_destino/pkill -u usuario
Los NAS Synology no traen el módulo de apache mod-wsgi por lo que he utilizado el módulo mod-fastcgi en su lugar para hacer funcionar Django en los NAS Synology. Necesitamos del módulo mysql-python , para su instalación podemos seguir la entrada que ya se publicó en este mismo blog: http://ilizaran.blogspot.com.es/2014/09/instalacion-del-modulo-mysql-python-en.html De la instalación de mysql-python ya tendremos instalado pip en el NAS por lo que podremos instalar Django con algunos módulos necesarios: pip install Django pip install setuptools pip install flup Para saber que la instalación de Django ha sido correcta y verificar la versión podemos realizar: python import django django.VERSION Ahora modifcamos la configuración de apache editando el fichero /etc/httpd/conf/httpd.conf-user para hacer accesible los ficheros css, imágenes y javascript de la parte administrativa de Django, por lo que añadimos: Alias /static/admin /usr/local/packages/@appstore/Python/usr/l
Comentarios