¿Cómo escribir un script bash que tome argumentos de entrada opcionales?

Quiero que mi script pueda tomar una entrada opcional,

p.ej. actualmente mi script es

#!/bin/bash
somecommand foo

pero me gustaría que dijera:

#!/bin/bash
somecommand  [ if $1 exists, $1, else, foo ]