免费注册 查看新帖 |

Chinaunix

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

shell里面怎么取上一月份的最后一天? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-31 09:09 |只看该作者 |倒序浏览
谢谢.

[ 本帖最后由 Installman 于 2006-12-31 09:36 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-12-31 10:45 |只看该作者
原帖由 Installman 于 2006-12-31 09:09 发表
谢谢.



[wangjn@linux67 dotest]$ date -d "last month last day"
四 11月 30 09:54:28 EST 2006
试了一下这个竟然成功了,我自己都没想到-d竟然支持这个str 呵呵。


不过下面的好像有点问题啊,last month好像只-30天啊,请哪位高手解释一下哈  :P

[wangjn@linux67 dotest]$ date -d "last month"
五 12月  1 09:54:46 EST 2006
[wangjn@linux67 dotest]$ date -d "last day"
六 12月 30 09:55:36 EST 2006

论坛徽章:
0
3 [报告]
发表于 2006-12-31 11:39 |只看该作者
系统是HP-UX,不支持-d...............

论坛徽章:
0
4 [报告]
发表于 2006-12-31 19:22 |只看该作者
今天是31,last day自然是30罗

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
5 [报告]
发表于 2007-01-01 00:23 |只看该作者
原帖由 Installman 于 2006-12-31 11:39 发表
系统是HP-UX,不支持-d...............

在精华区搜索关键字: 日期/或者最后一天

[ 本帖最后由 寂寞烈火 于 2007-1-1 18:05 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2007-01-01 00:37 |只看该作者
echo `cal 12 2006`|awk '{print $NF}'

论坛徽章:
0
7 [报告]
发表于 2007-01-01 10:47 |只看该作者
原帖由 痞子燕 于 2007-1-1 00:37 发表
echo `cal 12 2006`|awk '{print $NF}'

您试下2006年11月?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2007-01-01 19:53 |只看该作者
如果 date 沒有 -d,但你用的 shell 是 bash 的話:
  1. #!/bin/bash

  2. _Y=`date +%Y`
  3. _M=`date +%m`
  4. case "$_M" in
  5.         01|02|04|06|09|11)
  6.                 echo 31;;
  7.         05|07|08|10|12)
  8.                 echo 30;;
  9.         3)
  10.                 if [ $(($_Y % 4)) -eq 0 -a $(($_Y % 100)) -ne 0 ] || [ $(($_Y % 400 -eq 0))
  11.                 then echo 29
  12.                 else echo 28
  13.                 fi;;
  14.         *)
  15.                 echo UNKNOWN;;
  16. esac
复制代码

论坛徽章:
0
9 [报告]
发表于 2007-01-04 11:05 |只看该作者
原帖由 痞子燕 于 2007-1-1 00:37 发表
echo `cal 12 2006`|awk '{print $NF}'



学习中,这个可以得到更多的信息。

论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
10 [报告]
发表于 2007-01-04 16:26 |只看该作者
原来还可以这样写
  1. date -d"`date +%y%m01` last day"
复制代码

[ 本帖最后由 yunzhongyue 于 2007-1-4 16:28 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP