bash solution (desde que a opção de shell extglob esteja ativada - consulte manual de correspondência de padrões )
for i in 0.* ; do mv "$i" "${i##0.*(0)}" ; done
-
${i##excluir a correspondência mais longa do início da variáveli -
0.corresponde à sequência de caracteres0. -
*(0)significa zero ou mais ocorrências de 0
ou esta solução sugerida pelo @Costas, que não precisa da opção extglob
for i in 0.* ; do mv "$i" "${i#${i%%[!0.]*}}" ; done
-
${i%%excluir a correspondência mais longa do final deivariable -
*qualquer caractere, zero ou mais vezes -
[!0.]caracteres diferentes de0. - Portanto,
${i%%[!0.]*}exclui efetivamente do primeiro caractere não0ou.até o final. Por ex:35é excluído para0.035,1para0.001,str0.00456apara0str0.00456ae sequência inteira parastr0.00456a - os caracteres restantes (ex:
0.0para0.035e0.00para0.001são passados para${i#, que exclui esses caracteres do início da variável, resultando em35para0.035e1para0.001
Outras leituras: Expansão de Parâmetros