encontrando todos los directorios con espacios en blanco al final del nombre

0

Tengo un cliente que estoy cambiando a SMB para conectarse a una unidad de red, pero tenemos un problema con los usuarios que no pueden ver ciertos directorios a través de SMB, pero pueden verlo usando AFP aunque, al usar AFP tienen problemas importantes de conectividad.

Encontré que los directorios no se pueden ver en SMB porque tienen espacios en blanco al final por alguna razón, también algunos directorios tienen nombres ilegales, por lo que contienen caracteres como / y "que no funcionarán en SMB.

Puedo hacer 'encontrar. -name "[< >: \ |?] *" 'para encontrar archivos con caracteres ilegales, pero ¿cómo puedo cambiarlo para hacer directorios también? Además, ¿cómo puedo detectar las carpetas espaciadas en blanco?

Estoy bastante seguro de que tendría que usar el comando de búsqueda pero estoy un poco perplejo sobre cómo refactorizarlo para hacer esto.

    
pregunta Imaginovskiy 25.04.2014 - 11:02

1 respuesta

1

Puedes probar esto: find . -d -name "* " -type d -exec bash -c 'TO=$(echo "{}" | sed "s/.$//"); FROM=$(echo "{}"); mv "${FROM}" "${TO}"' \;

    
respondido por el Mateusz Szlosek 09.05.2014 - 11:20

Lea otras preguntas en las etiquetas