É possível personalizar o prompt do bash para mostrar se há algum trabalho em segundo plano? Acho fácil esquecer que existem trabalhos em segundo plano.
Diga se o prompt foi...
$
Existe uma maneira de mostrar o número de trabalhos em segundo plano? Por exemplo, se houvesse dois trabalhos em segundo plano enviados para segundo plano usando CTRL+Z
, o prompt seria...
2 $
Responder1
Coloque \j
seu prompt. Demanual do bash:
\j
O número de trabalhos atualmente gerenciados pelo shell
Apenas lembre-se de que os prompts ficam obsoletos e os trabalhos podem terminar a qualquer momento; portanto, se você deixou o terminal ocioso, será necessário exibir novamente o prompt.
Ao custo de exigir um processo extra apenas para imprimir seu prompt, você pode fazer com que ele \j
apareça apenas se existir algum trabalho.
PROMPT_COMMAND='hasjobs=$(jobs -p)'
PS1='${hasjobs:+\j }\$ '
Responder2
No zsh, você pode usar %j
para indicar o número de trabalhos e "%1(j.%j.)"
mostrar o número de trabalhos se houver pelo menos um em execução e, caso contrário, não mostrar nada (em vez de 0). Por exemplo. RPROMPT="%1(j.%j.)"
para mostrá-lo no prompt do lado direito.Mais informações no manualeesta resposta SO.