Php Bash读取txt并将条件应用于变量
可能会问,读取文件、将变量存储到数组中并能够比较它们的正确方法是什么? PHP用户界面编写了一个包含3个变量的txt:周日、小时和分钟,我需要将它们读入bash并与当前时间进行比较,以确定是否要做某事。 目前,我不确定如何读取和存储bash数组中的变量,并且我遇到了很多问题,关于如何计算条件以确定当前时间是否比txt时间重要。 在我的例子中,bash脚本正在运行,但有时它会完成一些操作,并且需要检查当前时间是否为主要时间,然后是txt选择下一步操作的时间 输入txt文件,计划日期示例Php Bash读取txt并将条件应用于变量,php,bash,Php,Bash,可能会问,读取文件、将变量存储到数组中并能够比较它们的正确方法是什么? PHP用户界面编写了一个包含3个变量的txt:周日、小时和分钟,我需要将它们读入bash并与当前时间进行比较,以确定是否要做某事。 目前,我不确定如何读取和存储bash数组中的变量,并且我遇到了很多问题,关于如何计算条件以确定当前时间是否比txt时间重要。 在我的例子中,bash脚本正在运行,但有时它会完成一些操作,并且需要检查当前时间是否为主要时间,然后是txt选择下一步操作的时间 输入txt文件,计划日期示例 2 20
2
20
45
bash脚本
#!/bin/bash
#CHECKTIME
#GET TIME
IFS=- read -r DAY HOUR MINUTE < <(date +%e-%H-%M)
echo $DAY
echo $HOUR
echo $MINUTE
#READ EVENT TIME
while IFS= read -r line; do
echo "$line"
done < myFile.txt
echo $line[0]
echo $line[1]
echo $line[2]
if [ "$DAY" = "$line[0]" ] && [ "$HOUR" -ge "$line[1]"] && [ "$MINUTE" > "$line[2]"]
then
echo "do event "
else
echo "don't do event"
#echo $name
fi
#/bin/bash
#检查时间
#有时间
IFS=-read-r日时分<“$line[2]”
然后
回显“做事件”
其他的
回应“不做事件”
#echo$name
fi
我是否需要:
如果一周的日期相等,小时数是主要的,那么就这样做,否则就不要这样做,但是如果一周的日期和小时数相等,那么还要检查分钟数是否相等或主要。。
?
但是,我不确定如何将变量读取和存储到数组中,以及如何在BASH中编写此条件,可能需要帮助吗?
谢谢如果保存的日期/时间与当前时间匹配,则要求似乎执行作业
# Ready current Month-day, hour, minute
read CDD CHH CMM <<< (date '+%e %H %M')
# Read saved time from file
{ read XDD ; read XHH ; read XMM ;} < myFile.txt
# Check for matching day, and execute if current time >= saved time.
if (( CDD==XDD && CHH*60+CMM >= XHH*60+XMM )) ; then
echo "Do Event"
else
echo "Skip"
fi
#准备好当前月份日期、小时、分钟
读取CDD CHH CMM=XHH*60+XMM);然后
回显“做事件”
其他的
回音“跳过”
fi
为什么不直接在PHP中执行此操作?作者:bash i drive mp4box,ffmpeg。。我需要检查live straeming何时结束,是否有新的live,是否是流式传输的时间。问题参考“周日”,但示例代码使用的是“月日”(%e in date)。您想使用哪一个?从问题中,一旦满足初始时间,“do事件”可以被触发多次(在选定的日期)。这就是目的吗?@massimovantiggio:
是bash中的重定向操作符。另外,由于]
前面缺少空格,您将收到一条错误消息bash:[:missing']''