Enviado em 13/01/2020 - 13:49h
wiki.anon
Boa tarde galera criei um script para renomear uma grande quantidade de pastas removendo
espaços ifens e algum ponto que tem no nome das pastas colocando underline,
fiz este script baseado em outro que tenho para renomear uma grande quantidaade de imagens,
porem ao fazer o teste no script deu o seguinte erro:
bash$ mkdir "Nova pasta.DRift-Asdf java" "Nova pasta.DRift-Asdf Java"
bash$ bash renamedir
Nova pasta.DRift-Asdf Java/ Nova pasta.DRift-Asdf java/ Nova_pasta_DRift-Asdf_Java/_Nova_pasta_DRift-Asdf_java/
Directory: Nova pasta.DRift-Asdf Java
Nova pasta.DRift-Asdf java/
Renamed: Nova_pasta_DRift-Asdf_Java_Nova_pasta_DRift-Asdf_java/ successfully
Nova pasta.DRift-Asdf Java/ Nova pasta.DRift-Asdf java/ Nova_pasta_DRift-Asdf_Java/_Nova_pasta_DRift-Asdf_java/
Directory: Nova pasta.DRift-Asdf Java
Nova pasta.DRift-Asdf java/
Renamed: Nova_pasta_DRift-Asdf_Java_Nova_pasta_DRift-Asdf_java/ successfully
ele esta pegando o nome das duas pastas e unindo em um nome só tentei resolver isso mas nao consegui alguem poderia me ajudar?
O script é este abaixo:
#!/bin/bash
#Renomeia apenas diretórios
k=1
while [ "${k}" -le "$(ls -d */ | wc -l)" ];
do
DIRECTORY="$(ls -d */)"
NEWNAME="$(echo ${DIRECTORY} | sed 's/^ //g;s/ - /_/g;s/ /_/g;s/ $//g;s/\./_/g;s/__/_/g;')"
echo ${DIRECTORY} ${NEWNAME}
if [ $? -ne 0 ]; then
echo -e "\033[37;1m${k} \033[m<-\033[31;1m nothing done.!!\033[m"
else
echo -e "\033[36;1m\n\tDirectory\033[35;1m: \033[m${DIRECTORY/\//}\033[31;1m\n\n\tRenamed\033[35;1m: \033[33;1m${NEWNAME/\//}\033[m successfully\n\n"
fi
k=$((${k}+1))
done
Boa tarde galera criei um script para renomear uma grande quantidade de pastas removendo
espaços ifens e algum ponto que tem no nome das pastas colocando underline,
fiz este script baseado em outro que tenho para renomear uma grande quantidaade de imagens,
porem ao fazer o teste no script deu o seguinte erro:
bash$ mkdir "Nova pasta.DRift-Asdf java" "Nova pasta.DRift-Asdf Java"
bash$ bash renamedir
Nova pasta.DRift-Asdf Java/ Nova pasta.DRift-Asdf java/ Nova_pasta_DRift-Asdf_Java/_Nova_pasta_DRift-Asdf_java/
Directory: Nova pasta.DRift-Asdf Java
Nova pasta.DRift-Asdf java/
Renamed: Nova_pasta_DRift-Asdf_Java_Nova_pasta_DRift-Asdf_java/ successfully
Nova pasta.DRift-Asdf Java/ Nova pasta.DRift-Asdf java/ Nova_pasta_DRift-Asdf_Java/_Nova_pasta_DRift-Asdf_java/
Directory: Nova pasta.DRift-Asdf Java
Nova pasta.DRift-Asdf java/
Renamed: Nova_pasta_DRift-Asdf_Java_Nova_pasta_DRift-Asdf_java/ successfully
ele esta pegando o nome das duas pastas e unindo em um nome só tentei resolver isso mas nao consegui alguem poderia me ajudar?
O script é este abaixo:
#!/bin/bash
#Renomeia apenas diretórios
k=1
while [ "${k}" -le "$(ls -d */ | wc -l)" ];
do
DIRECTORY="$(ls -d */)"
NEWNAME="$(echo ${DIRECTORY} | sed 's/^ //g;s/ - /_/g;s/ /_/g;s/ $//g;s/\./_/g;s/__/_/g;')"
echo ${DIRECTORY} ${NEWNAME}
if [ $? -ne 0 ]; then
echo -e "\033[37;1m${k} \033[m<-\033[31;1m nothing done.!!\033[m"
else
echo -e "\033[36;1m\n\tDirectory\033[35;1m: \033[m${DIRECTORY/\//}\033[31;1m\n\n\tRenamed\033[35;1m: \033[33;1m${NEWNAME/\//}\033[m successfully\n\n"
fi
k=$((${k}+1))
done