Boa Noite PessoALL, Acho que todos da lista conhece o script funcoeszz do nosso amigo Aurelio.
É que eu gostaria de utilizar uma das funções do script separadamente: # ---------------------------------------------------------------------------- # Renomeia arquivos do diretório atual, arrumando nomes estranhos. # Obs.: ele deixa tudo em minúsculas, retira acentuação e troca espaços em # branco, símbolos e pontuação pelo sublinhado _ # Use o -r para ser recursivo e o -d para renomear diretórios também # Uso: zzarrumanome [-d] [-r] arquivo(s) # Ex.: zzarrumanome * # zzarrumanome -d -r . # zzarrumanome "DOCUMENTO MALÃO!.DOC" # fica documento_malao.doc # zzarrumanome "RAMONES - I Don't Care" # fica ramones-i_don_t_care # ---------------------------------------------------------------------------- zzarrumanome(){ zzzz -z $1 zzarrumanome && return local A A1 A2 D i f_R=0 f_D=0; [ "$1" = '-d' ] && { f_D=1; shift; } [ "$1" = '-r' ] && { f_R=1; shift; }; [ "$1" = '-d' ] && { f_D=1; shift; } [ "$1" ] || { echo 'uso: zzarrumanome [-d] [-r] arquivo(s)'; return; } for A in "$@"; do [ "$A" != / ] && A=${A%/} [ -f "$A" -o -d "$A" ] || continue; [ -d "$A" ] && { [ "$f_R" -eq 1 ] && zzarrumanome -r ${f_D:+-d} "$A"/* [ "$f_D" -eq 0 ] && continue; } A1="${A##*/}"; D='.'; [ "${A%/*}" != "$A" ] && D="${A%/*}"; A2=`echo $A1 | sed "s/[\"']//g"' y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;s/^-/_/ y/ÀàÁáÂâÃãÄÅäåÈèÉéÊêËëÌìÍíÎîÏïÇçÑñ/aaaaaaaaaaaaeeeeeeeeiiiiiiiiccnn/ y/ÒòÓóÔôÕõÖöÙùÚúÛûÜüߢУØø§µÝý¥¹²³/oooooooooouuuuuuuubcdloosuyyy123/ s/[^a-z0-9._-]/_/g;s/__*/_/g;s/_\([.-]\)/\1/g;s/\([.-]\)_/\1/g'` [ "$A1" = "$A2" ] && continue ; [ -f "$D/$A2" -o -d "$D/$A2" ] && { i=1 ; while [ -f "$D/$A2.$i" -o -d "$D/$A2.$i" ]; do i=$((i+1)); done A2="$A2.$i"; }; mv -v -- "$A" "$D/$A2"; done } Alguem pode me ajudar para separar isso em um script somente ? Muito Obrigado,