Tratamento de argumentos no alias de bash

Pequeno trecho mostrando como lidar com n argumentos em um alias de bash.

O exemplo aceita n nomes de arquivos, verifica se os arquivos existem em haml dentro do diretório e tenta compilar o código haml para html.


haml_args(){
for file in "$@"
do
if [ ! -f "$file.haml" ];
then
echo
"Error: $file.haml does not exist"
else
echo
"Compiling $file.haml .........."
haml $file
.haml $file.html
echo
"Finished"
fi
done
}
alias hamlc=haml_args

Se você tem uma maneira melhor de fazer isso, por favor, me esclareça!