在Unix中获取昨天的日期 - KSH脚本

时间:2011-06-30 17:05:38

标签: unix ksh hp-ux

以下命令用于在HP UX上的Unix Ksh中获取yerterdays日期

DATE_STAMP=`TZ=CST+24 date +%m/%d/%Y` 

有人可以让我知道上面命令中的“CST + 24 date”是做什么的吗?

3 个答案:

答案 0 :(得分:2)

该命令将时区设置为CST + 24并返回该时区中的日期。

如果您正在寻找查找昨天日期的命令,那么您最好使用TZ技巧esp。如果你在观察夏令时的时区。

使用perl one liner。

#this takes local time and substracts a day(24*60*60 seconds) and formats the time.
echo `perl -e 'use POSIX; print strftime "%m/%d/%Y%", localtime time-86400;'` 

只是猜测你的命令 - 因为它昨天在CST + 24时区,该命令返回昨天的日期,如果你使用CST-24,它将在明天的日期重新开始,因为日期转换为明天的CST-24时区。

答案 1 :(得分:1)

VARIABLE=VALUE COMMAND表示您将环境变量VARIABLE设置为VALUE但不是持久性的,但仅适用于已执行的命令COMMAND

在您的示例中,这意味着:执行date命令,并将环境变量TZ设置为CST+24(这是中央标准时间加上24小时)。

答案 2 :(得分:-1)

查看此页面http://www.kodkast.com/blogs/unix-shell-scripting/how-to-get-yesterdays-date,您可以在其中找到昨天的日期以及unix shell脚本中的任何其他上一个日期。