O comando ps gerará todos os seus processos atualmente em execução. O primeiro grep removerá o processo grep dessa lista. O segundo extrairá qualquer processo firefox na lista filtrada.
Esta é provavelmente uma tentativa parcial de obter o ID do processo (PID) do processo firefox , possivelmente apenas para ver se está sendo executado ou para finalizá-lo.
Se esse for o caso, aconselho strongmente que você use pgrep (ou pkill , se a finalização do processo for posterior):
if pgrep firefox 2>/dev/null; then
echo "firefox is already running"
else
echo "starting firefox..."
firefox &
done
Para finalizar firefox :
pkill firefox
Ou seja, não percorre o caminho mais longo para encontrar seu PID primeiro.
Veja também os manuais de pgrep e pkill em seu sistema.