GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Convierta nombres de archivo a minúsculas a través de la línea de comandos de Ubuntu

Mientras trabaja con Linux, es posible que encuentre algunas utilidades y aplicaciones que solo funcionan con nombres de archivos en minúsculas. Por lo general, no guardamos archivos en este formato y es posible que tengamos que buscar una solución alternativa que convierta recursivamente todos los nombres de archivo en una carpeta a minúsculas. En este artículo, le mostraremos dos formas de convertir todos los archivos y nombres de carpetas en una ruta determinada a minúsculas, simplemente a través de la línea de comando.

Hemos ejecutado los comandos y procedimientos mencionados en este artículo en un sistema Ubuntu 18.04 LTS.

Así es como puede listar el contenido de su carpeta usando el comando de búsqueda:

$ buscar [nombre_directorio] -profundidad

Mi carpeta Descargas, que usaré como muestra para este artículo, tiene todos los archivos que comienzan con letras mayúsculas y también contiene algunos entre los nombres.

$ find Downloads -depth

Método 1:usar el comando de cambio de nombre

En este método, utilizaremos los comandos de búsqueda, Xargs y renombrar de Ubuntu para renombrar recursivamente todos los archivos/carpetas en un directorio dado.

Abra su línea de comando de Ubuntu, la Terminal, ya sea a través de la búsqueda del Lanzador de aplicaciones o el atajo Ctrl+Alt+T.

Esta es la sintaxis del comando que utilizará:

$ buscar [nombre_directorio] -profundidad | xargs -n 1 renombrar -v ‘s/(.*)\/([^\/]*)/$1\/\L$2/’ {} \;

Si no tiene el comando de cambio de nombre instalado en su sistema, es posible que obtenga un error cuando ejecute el comando anterior. Puede instalar el cambio de nombre en su Ubuntu a través del siguiente comando apt-get:

$ sudo apt-get install rename

Usaré el siguiente comando para convertir los nombres de archivo a minúsculas en mi directorio de Descargas:

$ find Downloads -depth | xargs -n 1 rename -v 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;

Cuando volví a enumerar el contenido del directorio, pude ver todos los nombres de archivo convertidos a minúsculas de la siguiente manera:

Método 2:usar un script para cambiar el nombre de los archivos

En este método, utilizaremos un script bash que usa los comandos find y mv para renombrar recursivamente los nombres de archivos y carpetas de un directorio, incluido el propio nombre del directorio.

Abra la aplicación Terminal y muévase a la carpeta bin de la siguiente manera:

$ cd ~bin

Ahora, abra un nuevo archivo de script en uno de sus editores de texto favoritos. Usaremos el editor nano para abrir un archivo de script vacío con el nombre de lowercase_filenames.sh

$ sudo nano lowercase_filenames.sh

En ese archivo vacío, agregue el siguiente script.

#!/bin/bash
#print usage
if [ -z $1 ];then
echo "Usage :$(basename $0) parent-directory"
exit 1
fi

#process all subdirectories and files in parent directory
all="$(find $1 -depth)"

for name in ${all}; do
#set new name in lower case for files and directories
new_name="$(dirname "${name}")/$(basename "${name}" | tr '[A-Z]' '[a-z]')"
#check if new name already exists
if [ "${name}" != "${new_name}" ]; then
[ ! -e "${new_name}" ] && mv -T "${name}" "${new_name}"; echo "${name} was renamed to ${new_name}" || echo "${name} wasn't renamed!"
fi

done
exit 0

Consejo: En lugar de escribir todo el script en su archivo bash, puede copiarlo desde aquí y pegarlo en la Terminal usando Ctrl+Shift+V, o usando la opción Pegar del menú contextual.

Así es como se verá su archivo:

Ahora, salga del archivo a través del atajo Ctrl+X y guarde el archivo en "¿Guardar búfer modificado?" mensaje escribiendo Y y luego presionando enter.

Para convertir este archivo en un script ejecutable, ejecute el siguiente comando en su Terminal:

$ sudo chmod +x lowercase_filenames.sh

Ahora está listo para usar el script en cualquiera de sus carpetas.

Cuando ejecuto el script en mi carpeta Descargas, veo todos los nombres de archivos y subcarpetas convertidos a minúsculas de la siguiente manera:

Entonces, estas fueron las dos formas en que puede cambiar el nombre de los archivos a letras minúsculas para que la aplicación que está utilizando no deje de reconocer los nombres de archivos en mayúsculas.


Ubuntu
  1. Cómo abrir fácilmente un archivo PDF desde la línea de comandos en Ubuntu

  2. Descargue un archivo en Ubuntu usando la línea de comandos en el sistema Ubuntu 20.04

  3. ¿Cómo convertir un archivo de Excel en un archivo Calc desde la línea de comandos?

  4. ¿Restauración de copias de seguridad con fallas en Ubuntu 16.04?

  5. Alternativa a la línea de comandos SSH de Ubuntu

Personalizaciones de la GUI de GNOME a través de la línea de comandos de Ubuntu

Eliminación por lotes de espacios en nombres de archivos a través de la línea de comandos de Ubuntu

Cómo descargar un archivo en Ubuntu Linux usando la línea de comandos

3 formas de reiniciar Ubuntu a través de la línea de comandos

Actualice Ubuntu 18.04 a Ubuntu 19.04 directamente desde la línea de comandos

Actualice Ubuntu 18.04 a Ubuntu 19.10 directamente desde la línea de comandos