Eu passei por várias soluções para renomear, mas nenhuma delas se encaixou nessa situação. Eu tenho que renomear um arquivo oldfilename para newfilename com condições como
Prefixe a string codificada como
"Pre_String"
seguido de acrescentar uma parte do nome antigo do arquivo até qualquer caractere especial, se houver
seguido pela data de adição calculada antes de
date = $(date +"%a, %d %b %Y %T %z)
adicionando uma extensão personalizada como
.abc
seguido por aparar qualquer espaço entre os arquivos criados acima que eu gostei
newFileName = "Pre_String_$oldfilename_$date.abc" | tr -d ' '
Finalmente eu faço eco da string
echo "filename is $newFileName"
e depois renomeie o oldfilename para newFilename
mv -v "$path$oldfilename" "$path$newFileName"
mas mesmo o simples como acima não está funcionando. Eu fiz muitas alterações, mas ou é tomado como comando não encontrado ou string halflway ou principalmente vazio no eco. Também estranhamente o comando 7 na maior parte do hit e try deu o newFilename como exatamente o oldfilename.