Shell日期转换
2013-11-08 11:18
225 查看
function date2days {
echo "$*" | awk '{
z=int((14-$2)/12); y=$1+4800-z; m=$2+12*z-3;
j=int((153*m+2)/5)+$3+y*365+int(y/4)-int(y/100)+int(y/400)-2472633;
print j
}'
}
function days2date {
echo "$1" | awk '{
a=$1+2472632; b=int((4*a+3)/146097); c=int((-b*146097)/4)+a;
d=int((4*c+3)/1461); e=int((-1461*d)/4)+c; m=int((5*e+2)/153);
dd=-int((153*m+2)/5)+e+1; mm=int(-m/10)*12+m+3; yy=b*100+d-4800+int(m/10);
printf ("%4d-%02d-%02d\n",yy,mm,dd)
}'
}
echo "$*" | awk '{
z=int((14-$2)/12); y=$1+4800-z; m=$2+12*z-3;
j=int((153*m+2)/5)+$3+y*365+int(y/4)-int(y/100)+int(y/400)-2472633;
print j
}'
}
function days2date {
echo "$1" | awk '{
a=$1+2472632; b=int((4*a+3)/146097); c=int((-b*146097)/4)+a;
d=int((4*c+3)/1461); e=int((-1461*d)/4)+c; m=int((5*e+2)/153);
dd=-int((153*m+2)/5)+e+1; mm=int(-m/10)*12+m+3; yy=b*100+d-4800+int(m/10);
printf ("%4d-%02d-%02d\n",yy,mm,dd)
}'
}
相关文章推荐
- C程序调用shell脚本共有三种方法
- 用C语言编写一个Linux下的简单shell程序
- shell比较操作符
- xshell的ssh协议连接ubuntu虚拟机问题
- shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such f
- shell命令总结
- shell脚本----if(数字条件,字符串条件,字符串为空)
- 玩转shell之符号篇
- shell中的cut命令
- bash
- shell之Bash分隔符;
- 执行shell的三种方法
- shell中case的用法学习笔记
- linux学习入门2-3——bash命令基本操作(linuxcast.net)(bash部分快捷键、uname、history、通配符、切换用户、作业管理(前台、后台运行,暂停等操作))
- linux bash shell中case语句的实例
- bash编程基础知识(一)
- shell for循环+case的脚本(监控程序状态)
- linux bash中too many arguments问题的解决方法
- linux基础之Shell Script入门介绍
- 分享一个shell for循环+case的脚本(监控程序状态)