zsh提示 – 检查是否有任何后台作业

我自定义我的zsh提示符,并找到以下内容来检查是否有任何后台作业: if [[ $(jobs | wc -l) -gt 0 ]]; then # has background job(s) number_jobs=J:${cyan}%j${no_color}else # no background job(s) number_jobs=fi 我所面临的问题是,只有当我打

我自定义我的zsh提示符,并找到以下内容来检查是否有任何后台作业:

if [[ $(jobs | wc -l) -gt 0 ]]; then # has background job(s)
    number_jobs='J:${cyan}%j${no_color}'
else # no background job(s)
    number_jobs=""
fi

我所面临的问题是,只有当我打开一个新的会话,而不是在每个命令使得这个没有用的时候,代码才被评估.每个命令后,如何重新评估number_jobs?

解决方法

zsh有一个特殊的提示序列,如C三元运算符.下面的工程意味着如果有一个或多个工作,然后打印他们的号码或打印什么:

%(1j.%j.)

作者: dawei

【声明】:西安站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部