微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Bash评估:[vs ||

我有一个存储在一个文件中的PID:

echo 394 > pid_stored

我正在检查一个pid是否正在运行:

kill -0 $(cat pid_stored) 2> /dev/null || echo "PID not running"

这就像一个魅力,但如果我想在真或假的情况下做多个行动,我想我需要一个如果然后fi结构。 但是由于某种原因,我无法弄清楚[或者[不要用同样的方式来评估:

if [[ $(kill -0 $(cat pid_stored) 2> /dev/null) ]] then echo "PID IS NOT RUNNING" fi

不起作用,它总是评估为真。 错误stream使用2>指向/ dev / null,因为如果pid存在或失败,则kill -0评估为true

如何在目录中压缩大于特定大小的文件

Windows脚本主机使用的JavaScript版本

在expect脚本中包含#include

Hashbang为Gnome .desktop文件

如何编写unix的精神? (小型单一任务工具)

谢谢!

无法在Cygwin中作为KornShell脚本执行shell脚本

在batch file中使用空格?

发出控制脚本stream程

如何以编程方式将两个aac文件合并为一个

批字符转义

删除[[ and ]]因为它用于评估表达式:

if kill -0 $(<pid_stored) 2> /dev/null then echo "PID IS RUNNING" else echo "PID IS NOT RUNNING" fi

PS:你也可以用$(<pid_stored)来避免cat

否定你可以使用:

if ! kill -0 $(<pid_stored) 2> /dev/null

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐