我想让我的Perl程序启动时判断如果不是星期一则退出。否则进行往后的处理。
此外,我想对指定目录下的部分文件进行处理:
文件命名规则:yyyymmdd.txt
指定对本周内的文件进行分析处理
该如何编程?
谢谢各位大虾了!
使用Perl如何判断当前日期是星期几?
答案:2 悬赏:70 手机版
解决时间 2021-01-29 15:01
- 提问者网友:遁入空寂
- 2021-01-28 22:09
最佳答案
- 五星知识达人网友:笑迎怀羞
- 2021-01-28 22:26
把下面这段代码保存下来,经常都需要的:
my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday)=localtime(time);
$mon++;
$year+=1900;
你要判断星期一的方法简单,在上面的语句段之后加上这一句就行:
exit if ($wday!=1);
你的第二个问题首先给你个建议,把要把yyyymmdd.txt的所有文件放在一个目录下,这样这个目录下的文件会太多,操作系统对文件是顺序查找,这样性能会很低下,建议把文件分开保存在不同的目录的下,我一般是按年度建立一级目录,按星期建立二级目录,具体文件放在“年度\星期\”目录下。全年中第几个星期的值这样判断:int(($yday-1)/7)+1
如果你采纳了我的建议,自然就是判断某个目录下的所有文件,不需要核对名字了。
my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday)=localtime(time);
$mon++;
$year+=1900;
你要判断星期一的方法简单,在上面的语句段之后加上这一句就行:
exit if ($wday!=1);
你的第二个问题首先给你个建议,把要把yyyymmdd.txt的所有文件放在一个目录下,这样这个目录下的文件会太多,操作系统对文件是顺序查找,这样性能会很低下,建议把文件分开保存在不同的目录的下,我一般是按年度建立一级目录,按星期建立二级目录,具体文件放在“年度\星期\”目录下。全年中第几个星期的值这样判断:int(($yday-1)/7)+1
如果你采纳了我的建议,自然就是判断某个目录下的所有文件,不需要核对名字了。
全部回答
- 1楼网友:荒野風
- 2021-01-28 23:10
自己写个这样的函数不就得了,例子:
$t='20091225';
$y=substr($t,0,4);
$m=substr($t,4,2);
$d=substr($t,6,2);
@months = qw(jan feb mar apr may jun jul aug sep oct nov dec);
$m=$months[months-1];
print "$m $d,$y";
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯