- 论坛徽章:
- 0
|
求助:如何得到字符串20040101表示的日期为星期几?
原帖由 "flyinghair" 发表:
expr $dd : 0. > /dev/null && dd=`echo $dd|cut -c 2-2`
aaa=`eval cal $mm $yy|grep " 20 "|cut -c 1-2`
请问这两句话是什么意思,能不能给解释一下呢?
expr $dd :0. 这个做了什么操作啊?
&&代表什么呢?
cal $mm $yy | grep "20"是什么意思呀?
你们不会鄙视偶吧?
1.expr $dd : 0. > /dev/null 是判断dd是否<10,因为dd<10的话,会是01-09,而下面要用dd做减法,01-09不可以,要把前面的0去掉,也就是dd=`echo $dd|cut -c 2-2`的功能了.&&表示它前面的一条指令成功的话就执行它后面的指令,否则不执行.
2.aaa=`eval cal $mm $yy|grep " 20 "|cut -c 1-2`
取cal命令中当月20日所在星期的星期天日期,因为是20,所以那个星期天不会不存在,也不会<10,<10的话cut -c 1-2会有空格.再用dd减去这个星期天日期,再模上7,就是dd对应的星期几.
呵呵,说的有点乱,有问题再交流. |
|