[20191128]date命令别名.txt

[20191128]date命令别名.txt

--//以前工作需要建立date的别名:
$ alias zdate
alias zdate='date +'\''%Y/%m/%d %T'\'''

$ date
Wed Nov 27 08:56:23 CST 2019

$ zdate
2019/11/27 08:27:56

--//我感觉这样更加符合国人的显示习惯.
--//前几天在测试ash_wait_chains.sql脚本,里面的时间范围我的建议trunc(sysdate)之类的格式.
--//仅仅需要知道1/24表示1小时,1/1440表示1分钟,1/86400表示1秒就ok了.
--//比如你需要查看当天8:15到9:10的情况,时间可以写成:
trunc(sysdate)+8/24+15/1440 trunc(sysdate)+9/24+10/1440

--//如果写成"to_date('04.09.2019 07:05:09','dd.mm.yyyy hh24:mi:ss')"之类太长也比较麻烦.
--//这样工作需要再建立一个别名,显示如果如下格式:
trunc(sysdate)+8/24+15/1440

$ date +'trunc(sysdate)+%H/24+%M/1400+%S/86400  == %Y/%m/%d %T'
trunc(sysdate)+08/24+39/1400+13/86400  == 2019/11/27 08:39:13

--//顺便修改一下以前使用单引号要转义修改为双引号这样更加简洁一些:

alias zdate="date +'%Y/%m/%d %T'"
alias zzdate="date +'trunc(sysdate)+%H/24+%M/1440+%S/86400 == %Y/%m/%d %T'"

--//测试:
$ zdate ; zzdate
2019/11/27 08:51:05
trunc(sysdate)+08/24+51/1440+05/86400 == 2019/11/27 08:51:05

SCOTT@book> select trunc(sysdate)+08/24+51/1440+05/86400 c20 from dual ;
C20
--------------------
2019-11-27 08:51:05

SCOTT@book> select trunc(sysdate)+09/24+51/1440+05/86400 c20 from dual ;
C20
--------------------
2019-11-27 09:51:05

--//不必担心09当作8进制.

请使用浏览器的分享功能分享到微信等