如何计算ksh shell脚本中的上一个工作日?
发布时间:2020-12-15 18:18:51 所属栏目:安全 来源:网络整理
导读:在 shell ksh脚本中计算前一个工作日的最优雅方法是什么? 我到现在所拥有的是: #!/bin/kshset -xDAY_DIFF=1case `date '+%a'` in"Sun") DAY_DIFF=2 ;;"Mon") DAY_DIFF=3 ;;esacPREV_DT=`perl -e '($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=l
在
shell ksh脚本中计算前一个工作日的最优雅方法是什么?
我到现在所拥有的是: #!/bin/ksh set -x DAY_DIFF=1 case `date '+%a'` in "Sun") DAY_DIFF=2 ;; "Mon") DAY_DIFF=3 ;; esac PREV_DT=`perl -e '($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time()-${DAY_DIFF}*24*60*60);printf "%4d%02d%02d",$year+1900,$mon+1,$mday;'` echo $PREV_DT 如何将${DAY_DIFF}变量作为值而不是字符串传输? 解决方法#!/bin/ksh # GNU date is a veritable Swiss Army Knife... ((D=$(date +%w)+2)) if [ $D -gt 3 ]; then D=1; fi PREV_DT=$(date -d "-$D days" +%F) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |