bash:在 bash 提示符中显示后台作业的名称

bash:在 bash 提示符中显示后台作业的名称

如果 bash 提示符可以用作迷你任务栏,那就太酷了。

bash 提示符(PS1)可以显示 jobs 命令中列出的作业的名称吗?

答案1

评论中的 AFH 为您提供了构建模块。这里有一个如何正确引用的示例。

作为“作业名称”,我选择作业的命令名称(“Running”之后的第一个单词):

PS1='$(echo $(jobs | awk '\''/Running/{print "[" $3 "]"}'\''))$ '

当我们使用两个后台命令尝试该操作时,只需输入几次“enter”就可以看到提示符的变化:

$ sleep 4 & sleep 2 &
[1] 7222
[2] 7223
[sleep] [sleep]$ 
[sleep] [sleep]$ 
[2]+  Done                    sleep 2
[sleep]$ 
[1]+  Done                    sleep 4
$ 

相关内容