O que há de errado aqui?
for file in ffn* do;
rename 's/ffn//' ffn*;
done
Há um erro na sintaxe.
Responder1
O ponto e vírgula está no lugar errado. Tentar:
for file in ffn*; do
rename 's/ffn//' "$file"
done
ou, porque rename
pode receber muitos arquivos de uma vez, tente:
rename 's/ffn//' ffn*