El Lunes, 15 de Enero de 2007 02:11, Carlos E. R. escribió:
Bueno, pues ya tengo uno, y con un bug conocido: falla en los nombres de ficheros y directorios con espacios, no los hace. Tengo una solución para eso con un programita en pascal que los "escapa", pero igual alguien conoce otra manera "tipo script" o más correcta (el origen del error lo indico abajo):
* Que los substituya primero por un _ ----------Quitar espacios ---------- #!/bin/bash ## Substituir espacios en blanco de ficheros por _ ## ejecutar en el directorio donde esten los ficheros ## tambien un comando que podria valer ## for i in *;do mv "$i" "${i// /_}"; done ## DO= if [ "_$1" = "_-n" ] then DO=echo shift fi find $1 -depth -print |\ while read file do DIR=`expr "$file" : '\(\([^\/]*\/\)*\)\(.*\)'` FILE=`expr "$file" : "$DIR"'\(.*\)'` NFILE="$DIR"`echo "$FILE" | tr '[A-Z]' '[a-z]' | tr '][|!;:\ #$&~' _ ` if [ "$NFILE" != "$file" ] then if [ -f "$NFILE" ] then echo Warning: "$NFILE" exists "($file)" else echo Renaming: "$NFILE" $DO mv "$file" "$NFILE" fi fi done --------------fin ----------