当前位置:  技术问答>linux和unix

unix取日期的问题

    来源: 互联网  发布时间:2016-08-23

    本文导语:  系统是 HP UNIX 想在一个shell中取昨天的日期该如何取? 发现 date -d 不可用 提示下面的错误 [vtest:/home/test] date -d date: illegal option -- d Usage: date [-u] [+format]        date [-u] [mmddhhmm[[cc]yy]]    ...

系统是 HP UNIX
想在一个shell中取昨天的日期该如何取?

发现 date -d 不可用
提示下面的错误

[vtest:/home/test] date -d
date: illegal option -- d
Usage: date [-u] [+format]
       date [-u] [mmddhhmm[[cc]yy]]
       date [-a [-]sss.fff]

还有什么办法可以取得昨天的日期么?

|
查了以前在hp-unix下写的东西,正好有一个取指定日期上一日日期的脚本


get_mon_days()
{
Y=`expr substr $1 1 4`
M=`expr substr $1 5 2`
r1=`expr $Y % 4`
r2=`expr $Y % 100`
r3=`expr $Y % 400`
case $M in
01|03|05|07|08|10|12) days=31;;
04|06|09|11) days=30;;
esac
if [ $M -eq 02 ]
then
if [ r1 -eq 0 -a r2 -ne 0 -o r3 -eq 0 ]
then
   days=29
else
   days=28
fi
fi
echo $days
}
get_before_date()
{
Y=`expr substr $1 1 4`
M=`expr substr $1 5 2`
D=`expr substr $1 7 2`
YY=`expr $Y - 1`
MM=`expr $M - 1`
DD=`expr $D - 1`
MM=`printf "%02d" $MM`
DD=`printf "%02d" $DD`
dd=$Y$MM
dad=`get_mon_days $dd`
be_date=$Y$M$DD
if [ $D -eq 01 ]
then
if [ $M -ne 01 ]
then
be_date=$Y$MM$dad
fi
if [ $M -eq 01 ]
then
be_date=$YY"1231"
fi
fi
echo $be_date
}
get_before_date 20100428

|
linux下 
前一天的日期
date -d"1 day ago" +"%y%m%d"
前一个月的日期
date -d"1 month ago" +"%y%m%d"
类似的还有
date -d"-1 day ago 1 month ago" +"%y%m%d"
date -d"1 day ago -1 year ago 1 month ago" +"%y%m%d"

freebsd下
前一天的日期
date -v-1d +"%y%m%d"
前一个月的日期
date -v-md +"%y%m%d"
类似的还有
date -v-1d -v-1m +"%y%m%d"
date -v-1d -v-1m -v-1y +"%y%m%d"

hpux下
perl -e "print sprintf '%04d-%02d-%02d',(localtime(time()-86400))[5]+1900,(localtime(time()-86400))[4]+1,(localtime(time()-86400))[3]"

    
 
 

您可能感兴趣的文章:

  • 如何用 Unix Kshell 对日期进行加减
  • 如何设置日期格式 informix 5.x for Unix
  • 请问高手们,在UNIX下怎么改变系统日期?
  • 有关UNIX取日期值的问题
  • 在UNIX如何取得昨天的日期
  • unix cshell 日期格式的问题 和 sed的使用
  • 在unix下编程,把一个日期类型的变量变为字符串型的,用什么函数?
  • unix定期删除日期格式文件夹的脚本问题
  • UNIX 如何实现日期加减
  • UNIX脚本中校验日期是否有效
  • mysql unix准换时间格式查找指定日期数据代码
  • UNIX特急!!!digital unix问题,请专家快来!!!
  • 小问题, Unix 如何建立一个文件 ,unix 文件有后缀名吗
  • 入门问题,我想向UNIX编程方向发展,单目前不会UNIX,我该如何做
  • unix下的非常的奇怪WC的问题,向unix高手请教 好急呀!!!!!!!!!!!!!!!
  • 菜鸟问题:现在要做unix下的c/c+编程的几个问题?
  • unix下jdk配置问题及发布问题.
  • UNIX的一个初级问题
  • [学习UNIX编程]初学UNIX编程,遇到一个小小的问题,烦劳大虾帮忙解惑,谢谢!
  • 关于UNIX文件I/O操作的问题,解决问题立即结贴
  • 新手,请教安装SCO Unix的问题
  • unix使用问题
  • 我初学 Unix 编程,在看《Unix环境高级编程》时有一个问题请指教。
  • 安装UNIX问题
  • 小问题, Unix 如何建立一个文件 ,unix 文件有后缀名吗 iis7站长之家
  • unix下发email问题
  • unix下编译问题
  • 一个关于安装SCO UNIX的问题
  • UNIX跟98安装问题
  • 关于unix系统安全问题!急!!!
  • linux和unix问题,望高手指教
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.util.regex类pattern的类成员方法: unix_lines定义及介绍
  • 刚刚接触Unix系统和Unix编程。急需Unix下多线程程序设计和网络Socket程序设计方面的资料。
  • unix/Linux下c++ boost thread库读写锁介绍
  • 关于UNIX的历史 : 1973年,K.Thompson和D.M.ritchie,用C改写UNIX。那么,在此之前,UNIX是用什么写的?
  • php将标准字符串格式时间转换成unix时间戳_strtotime
  • 没有unix系统我如何学习unix
  • php将unix时间戳转换成字符串时间函数(date)
  • unix盘哪里有下载的??哪里有比较好的unix论坛??万分感谢!!!!!!!!!
  • unix/Linux下c/c++ pthread库读写锁函数介绍
  • 急!装完unix5.06,再装win2000。重启后不能进unix.
  • UNIX支持中文否,请推荐UNIX好书
  • SCO UNIX 5.0用软盘启动之后无法启动UNIX
  • 散分!!unix 用户调查!!!你使用哪款unix
  • hp unix 和 sco unix的区别
  • 强烈建议将linux/Unix栏目放到“软件开发者”大类里面来。----Unix开发的人助威支持!!!
  • 现在那些unix比较流行?Linux和 Unix有 什么区别?
  • 我想学习Unix,请高手给个下载网址,用linux来学习Unix差别大吗?
  • 请问各位unix大虾,哪有免费的unix下载?
  • 学UNIX从SOC UNIX开始好吗?
  • 安装SCO UNIX到PC机上是否一定要用SCO UNIX光盘?
  • 谁有介绍UNIX下面函数的书啊,类似UNIX编程参考手册的东西


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3