GNU/Linux >> Tutoriales Linux >  >> Panels >> Webmin

"Reparación" de nombres de archivo problemáticos.

Windows tiene una serie de caracteres reservados que no están permitidos en los nombres de archivos/carpetas:

◦Los siguientes caracteres reservados:
◾<(menor que)◾> (mayor que)
◾:(dos puntos)
◾” (comillas dobles)
◾/ (barra inclinada )
◾\ (barra invertida)
◾| (barra vertical o tubo)
◾? (signo de interrogación)
◾* (asterisco)

También desaconsejaría el uso de llaves {}

El siguiente fragmento de código se puede usar para "limpiar" una carpeta llena de archivos y deshacerse de los principales impedimentos. En este extracto, reemplazo ciertos caracteres como el espacio y:con _ y elimino otros caracteres. También reemplazo un __ de "espacios dobles" resultante con un solo _

Siéntase libre de ampliar y adaptar según sea necesario.

La canalización de ls en un tiempo de lectura evita la necesidad de intentar escapar correctamente de todo cuando se envía a mv

###
# Fix badly names files
# Windows doesn't really like "::" in filenames, we'll also get rid of other problematic characters.
###

ls | while read -r FILE ; do
  mv -u "${FILE}" $(echo "${FILE}" | tr ' ' '_' | tr -d '[{}(),\!]' | tr ':' '_' | sed 's/__/_/g') 2>/dev/null
done

Webmin
  1. Arreglando Spamassassin en Debian Jessie(8)

  2. ¿El indicador de terminal sobrescribe la línea actual?

  3. ¿Puede Sed reemplazar los caracteres de nueva línea?

  4. Tr analógico para caracteres Unicode?

  5. ¿Cómo eliminar los caracteres finales en los nombres de archivo en Bash?

Cómo manipular nombres de archivos que tienen espacios y caracteres especiales en Linux

Comando Tr en Linux con ejemplos

Cómo quitar (^M) caracteres de un archivo en Linux

Arreglando la congelación de Ubuntu en el momento del arranque

¿Caracteres de cita de la página de manual?

Comando tr de Linux con ejemplos