Que tal isso:
for i in *.report-server; do echo mv "$i" "$(date -d@${i%%.*} +%d-%m-%Y.${i##*.})"; done
Isso faz um loop sobre os arquivos .report-server
no diretório atual e para cada arquivo imprime uma linha como
mv 1509106656.32538_1.report-server 27-10-2017.report-server
onde você pode verificar o nome do arquivo. Se ele fizer o que você deseja, simplesmente remova echo
do comando e execute-o para executar a renomeação.
Tenha cuidado ! Se você acabar tendo vários arquivos com a mesma data, mv
irá (por padrão) substituir os primeiros de forma silenciosa. Se você quiser preservar a parte .32538_1
(presumivelmente única), altere ${i##*.}
para ${i#*.}
no comando. Se você quiser que mv
pergunte antes de sobrescrever arquivos, adicione a opção -i
.