gpt4 book ai didi

Bash 脚本通过 term 和 MacOS launchd 进行不同的评估

转载 作者:行者123 更新时间:2023-12-04 01:06:00 24 4
gpt4 key购买 nike

<分区>

我有一个非常简单的 bash 脚本,它可以 curl 一个 URL,计算响应中的一个子字符串,并在找到该字符串时运行一些代码。

本来我是这样写的:

RESP=$(curl -s 'https://theurl.com' | grep -ic substring)

if [ $RESP > 0 ];
do something
else
do something else
fi

这在我的终端提示中非常有效。

当我将其设置为作为本地用户启动代理在 launchd 中运行时,if 语句从未评估为真。

我在调试期间尝试过的事情:

  1. 确保两者都在使用/bin/bash(它们是)并以我的身份运行。
  2. 将变量发送到标准输出以确认。
  3. 在没有 curl 的情况下运行它们,只是 grep 一个本地文件。

最终,我能够通过将 if 更改为:

if [ $RESP -ge 1 ]

这在两个地方都有效,但我不明白为什么完全相同的解释器中的完全相同的脚本在两个地方的评估会不同。

有什么想法吗?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com