大家早上好,

当前,我正在尝试在bash脚本的if / fi语句中定义一个变量,以检查当前系统时间,并根据当前系统时间定义一个变量:

TIME=`date +%h%m%s`

if [ ${TIME} -ge 050000 ]; then RUNHR=00 fi
if [ ${TIME} -ge 110000 ]; then RUNHR=06 fi
if [ ${TIME} -ge 170000 ]; then RUNHR=12 fi
if [ ${TIME} -ge 225900 ]; then RUNHR=18 fi


但是,在执行此操作之后,RUNHR值将不会保留,并且从未定义。

有谁知道如何解决这个问题?

最佳答案

Linux脚本不是语法灵活的。

首先,您必须使用HM而不是hm,小hm将为您提供字符串形式的日期。

经过测试。

TIME =`date +%H%M%s`

如果[$ {TIME} -ge 050000];然后
RUNHR = 00
科幻
如果[$ {TIME} -ge 110000];然后
RUNHR = 06
科幻
如果[$ {TIME} -ge 170000];然后
RUNHR = 12
科幻
如果[$ {TIME} -ge 225900];然后
RUNHR = 18
科幻

回声$ RUNHR


谢谢

苏亚什·贾恩(Suyash Jain)
http://linuxhacks.in

10-06 02:15