Felizmente, existe uma maneira relativamente padronizada de relatar possíveis opções para os programas. No entanto, nem sempre é usado, portanto, essa não é uma resposta à prova de erros; apenas uma resposta à prova de poweruser.
$prog --help | grep -e "\b$option\b"
(note que \ b significa limite de palavra. Assim, não haverá mais caracteres após sua opção $, portanto, $ option-f não corresponderá)
Isso retornará a você a opção, se ela existir - mas, mais importante, retornará um status de saída igual a 0, se existir, ou um status de saída igual a 1, se não existir. Você pode testar isso com:
$ # we pipe to /dev/null to hide the output, and show that it doesn't matter
$ grep --help | grep -e "\b--exclude-dir\b" > /dev/null
$ echo $?
0
$ grep --help | grep -e "\b--exclude-dirf\b" > /dev/null
$ echo $?
1
Isso funcionará em muitos programas, mas todos têm um --help que é ... útil . Você também pode ter sorte com
man $progr | grep -e "\b$option\b"
se o primeiro falhar