バックグラウンドジョブがあるかどうかを示すようにプロンプ​​トをカスタマイズできますか?

バックグラウンドジョブがあるかどうかを示すようにプロンプ​​トをカスタマイズできますか?

バックグラウンドジョブがあるかどうかを示すようにbashプロンプトをカスタマイズできますか?背景作業があるという事実を簡単に忘れてしまいます。

プロンプトが次のようになるとしましょう。

$

バックグラウンドジョブの数を表示する方法はありますか?たとえば、バックグラウンドで送信された2つのバックグラウンドジョブを使用している場合、CTRL+Zプロンプトは次のようになります。

2 $

ベストアンサー1

\jヒントを入力してください。 ~からバッシュマニュアル:

\j 現在のシェルによって管理されているタスクの数


プロンプトは期限切れになり、操作はいつでも完了する可能性があるため、端末をアイドル状態にしておくと、プロンプトを再表示する必要があることに注意してください。


\jジョブがある場合にのみプロンプトを表示できますが、プロンプトを印刷するには追加のプロセスが必要です。

PROMPT_COMMAND='hasjobs=$(jobs -p)'
PS1='${hasjobs:+\j }\$ '

おすすめ記事