我需要使用BASH从变量(包含哈希数据)中获取PID值。评估错误,因为其中包含数组。该脚本在iPhone上。

eval "$(launchctl list com.3radicateRD)"

eval: line 10: syntax error near unexpected token `('
eval: line 10: `  "ProgramArguments" = ('
------------------------------------------------------
{
        "Label" = "com.3radicateRD";
        "LimitLoadToSessionType" = "System";
        "OnDemand" = false;
        "LastExitStatus" = 0;
        "PID" = 6810;
        "TimeOut" = 30;
        "ProgramArguments" = (
                "bash";
                "/var/mobile/Library/3radicateRD/3radicateRD";
        );
};

最佳答案

我不知道IPhone上的bash(或与此相关的launchctl)。但是通常您需要获得包含"PID" = ...的行,从中删除引号,分号,空格和制表符,然后将结果传递给eval。您可以使用grepsed来做到这一点:

eval $(launchctl list com.3radicateRD | grep '"PID"' | sed 's/["; \t]//g')

关于ios - 使用bash获取哈希值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3253228/

10-12 17:38