0

我在运行 OpenWRT 的 TPLink 路由器上。当设备启动时,我希望一个 LED 亮起,直到从 ntp 服务器更新系统时间。

这是我的方法:

#!/bin/sh

echo 0 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio0/direction
echo 1 > /sys/class/gpio/gpio0/value

currentDate=$(date +%s)

 while [ $currentDate < 1342016035 ]; do
                echo Time not updated yet
                currentDate=$(date +%s)
done

echo Time updated!

echo 0 > /sys/class/gpio/gpio0/value
echo 0 > /sys/class/gpio/unexport

当我运行它时,我得到“./timescript.sh: line 11: can't open 1342016035: no such file”。你知道为什么会这样吗?另一个问题是,这是否有意义,或者处理器在循环中被占用并且无法更新时间?

提前致谢!!

4

1 回答 1

3

测试需要 -lt 和 -gt 用于算术

#!/bin/sh

echo 0 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio0/direction
echo 1 > /sys/class/gpio/gpio0/value

currentDate=$(date +%s)

while [ $currentDate -lt 1342016035 ]; do
            echo "Time not updated yet"
            currentDate=$(date +%s)
done

echo "Time updated!"

echo 0 > /sys/class/gpio/gpio0/value
echo 0 > /sys/class/gpio/unexport
于 2012-07-11T14:39:27.803 回答