Blog

Una forma fácil de renombrar ficheros

Una forma fácil de renombrar ficheros

En GNOME, cuando tomamos una captura de pantalla, se genera un fichero con esta estructura: Screenshot from YYYY-MM-DD HH:MM:SS.png … donde YYYY es el año, MM el mes, DD el día, HH la hora, MM el minuto, y SS el segundo, de la captura. Por defecto, se guarda en la carpeta Pictures. Si después queremos moverlo a una partición NTFS, tendremos que quitar o reemplazar los dos puntos, porque son un carácter inválido en ese sistema de archivos. Curiosamente, NTFS-3G, el driver que utiliza Linux para escribir en NTFS, no nos lo impide utilizarlos, pero al volver a Windows no podremos leer el contenido del fichero. Una forma fácil de reemplazarlos es: [root@localhost Pictures]# for fichero in *; do mv "$fichero" "${fichero//:/.}"; done Aquí hemos utilizado la construcción ${VARIABLE//PATRÓN/SUSTITUCIÓN}, disponible en bash, ksh y zsh. Para todos los fichero del directorio (for fichero in *) sustituimos los dos puntos por un solo punto. Las comillas de "$fichero" y "${fichero//:/.}" son necesarias si fichero contiene espacios. Ahora podemos copiar a NTFS sin problemas. Es este link se pueden ver otros métodos de reemplazo.