Tenho o seguinte script que escrevi para remover arquivos temporários:

http://bash.pastebin.com/ZfawZQmD

Acontece que a opção -e não funciona quando usada nesta forma ou em conjunto 
com a opção -t (ou seja -te ou -et)

O culpado está na linha 72:

  case "$opt" in
    -*e*) exe="1"; opt=`echo "$opt" | sed "s/e//"`
  esac

Pois quando "$opt" é "-e" o comando echo interpreta como sendo opção dele 
mesmo. Infelizmente o echo não implementa a opção "--", comum nos comando do 
Unix e que resolveria o problema.

Pergunto se existe uma forma elegante e o mais portável possível de resolver 
esta questão. Imaginei acrescentar um "-" extra antes de "$opt", mas se o 
usuário, por exemplo, informar -x o script vai dizer que --x é inválido...

Marcio Gil.


Responder a