0

我正在制作一个 geeklet(位于 OS X 桌面上的脚本,来自Geektool ),它使用以下命令从 Reddit 获取未读消息的状态(使用API 中的me.json )

echo curl -X GET -u 'username:password' http://www.reddit.com/api/me.json | sed -e "s/.*\"has_mail\":以某种方式得到布尔值的真/假"

然后取 bool 的状态来设置图像。

输入应该是 TRUE(有未读消息)或 false(没有未读消息)。输出应该是本地目录中的图像,根据真/假而变化。

两个问题:

  1. 你如何用 sed 返回 TRUE/FALSE?
  2. 您如何获取 TRUE/FALSE 并设置图像(本地)?

谢谢!

4

1 回答 1

0

Sed 不是执行此操作的更好工具,请尝试执行此操作:

#!/bin/bash

out=$(curl -X GET -u 'username:password' http://www.reddit.com/api/me.json | ...)
if [[ $out == *TRUE* ]]; then
    echo 'Do something'
    exit 0
elif [[ $out == *FALSE* ]]; then
    echo 'Do another thing'
    exit 1
else
    echo >&2 "Command fails"
fi

或使用

curl ... | grep -q TRUE && do_Something || do_another_thing
于 2013-08-31T20:44:23.223 回答