Là, le plus rapide semble être l'uitilisation de SED:
c2d:~ adrien$ echo $VAR |sed 's/\(.*\)\.\(.*\)/file: \1 ext: \2/'
file: mail.log.0.10 ext: gz
Il y a d'autres solutions mais qui vont nécéssiter beaucoup de commandes.
ex: aficher la variable a l'envers, couper le champ 1 le renverser et tu as l'extension
substituer l'extension trouvée en 1 par rien dans la variable.
c2d:~ adrien$ ext=$(echo $VAR|rev |cut -f1 -d'.' | rev)
c2d:~ adrien$ echo $ext
gz
c2d:~ adrien$ file=${VAR/.$ext/}
c2d:~ adrien$ echo $file
mail.log.0.10
c2d:~ adrien$
Une belette, un lapin !?
C'est pas normal!