Ativar autosplit do Perl. Ele divide as linhas na matriz @F (no espaço em branco), então $F[0] contém a primeira coluna.
ps -ejH | perl -a -E 'if (/bash/) {say $F[0]; last;}'
Você também pode se livrar dos comandos grep e head porque grepping é uma coisa que o Perl pode fazer muito bem.
O head pode ser substituído por uma chamada para last , que quebra o loop implícito de while(<>){...} imposto pela opção -a . Em Perls mais antigos (antes v5.20) você também pode precisar da opção -n , mas hoje em dia -a implica -n .
Embora eu ame o Perl, eu faria este em particular com awk :
ps -ejH | awk '/bash/ {print $1; exit}'