这可能有点奇怪。我有一个字符串,表示每周所有“允许”的时间。字符串长度为 168 个字符。每个字符都是 1 或 0。每个字符代表一周中的一个小时。因此,字符串中的前 24 个字符表示星期日的“允许”小时数。接下来的 24 个字符是星期一,以此类推。数字 1 表示“允许”,数字 0 表示不允许。这是一个示例字符串:
000000111111111111111000000000111111111111111000000000111111111111111000000000111111111111111000000000111111111111111000000000111111111111111000000000111111111111111000
此字符串表示周日至周六上午 6 点到晚上 9 点之间允许的时间。很多时候,一周中的不同日子会有不同的允许时间。我试图弄清楚当前时间是否“允许”。
我发现这些告诉我当前的日期和时间:
DATE=$(date)
day=$(echo $DATE | cut -d' ' -f1)
time=$(echo $DATE | cut -d' ' -f4 | cut -d: -f1-2 | tr -d ':')
但是,我想不出一种优雅的方式将它们与我的长字符串进行比较。
任何帮助将不胜感激!
请注意: 我使用的是 BusyBox 1.19.4。这意味着 awk、sed、grep 等可能功能不全。:-(
电动汽车