免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3248 | 回复: 4
打印 上一主题 下一主题

[日期时间] 怎样提取下一天的fname??? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-11-02 10:49 |只看该作者 |倒序浏览
遇到问题,请大家帮忙想想好点的主语

fname='fnl_201404_01_00_00.nc'  (例子,这样的文件很多)

现在,我将年份、月份、天数、小时都提取出来,赋值:fy   fm  fd  fh

每次查看 if  (fh==‘00’),start=当前的fname
                                      end=fd+1之后的fname,即:下一天00时的fname

     22 fy=$(awk -vfname=$fname 'BEGIN{print substr(fname,5,4)}')
     23 fm=$(awk -vfname=$fname 'BEGIN{print substr(fname,9,2)}')
     24 fd=$(awk -vfname=$fname 'BEGIN{print substr(fname,11,2)}')
     27 fh=$(awk -vfname=$fname 'BEGIN{print substr(fname,14,2)}')

怎样得到fd下一天的fname 呢?

论坛徽章:
0
2 [报告]
发表于 2014-11-02 11:03 |只看该作者
等待大家的帮助中

论坛徽章:
2
摩羯座
日期:2014-11-03 15:28:56卯兔
日期:2015-01-04 17:20:51
3 [报告]
发表于 2014-11-03 09:24 |只看该作者
回复 1# 白兔糖0217
  1. fname='fnl_201404_01_00_00.nc'
  2. echo $fname|awk -vFS='[_.]' '{y=substr($2,1,4);m=substr($2,5,2);d=$3;h=$4;mi=$5;_cmd_="date -d \""y"-"m"-"d" "h":"mi" +1 days\" +\"%Y%m_%d_%H_%M\"";_cmd_|getline t;close(_cmd_);print $1"_"t"."$NF}'
  3. fnl_201404_02_00_00.nc
复制代码

论坛徽章:
780
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
4 [报告]
发表于 2014-11-03 09:47 |只看该作者
回复 1# 白兔糖0217
  1. fname='fnl_201402_28_00_00.nc';f=$(date -d$(echo $fname|sed -r 's/.*([0-9]{4})([0-9]{2})_([0-9]{2}).*/\1-\2-\3/')"+1 day" +%Y%m_%d);echo "fnl_${f}_00_00.nc"
  2. fnl_201403_01_00_00.nc
复制代码

论坛徽章:
1
未羊
日期:2014-06-16 09:14:34
5 [报告]
发表于 2014-11-03 10:07 |只看该作者
本帖最后由 jimmy14k 于 2014-11-03 10:09 编辑

我上次也遇到日期的问题,后来没办法,直接用循环,再判断文件是否存在

for((i=1;i<=12;i++));do
   fm=$i
   if [[ $i -lt 10 ]];then
      fm=0$i
   fi
   for((j=1;j<=31;j++));do
       fd=$j
       if [[  $j -lt 10]];then
           fd=0$j
       fi
       if [ -f path/fnl_2014$fm_$fd_00_00.nc   ];then
           .......
       fi
   done
done
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP