我想从Linux中的日期中获取月份和日期。这是我的代码
# Set Date
D="2013/01/17"
# get day
DD=$(D+"%d")
# get day
MM=$(D+"%M")
# Day
echo "Day:"$DD
echo "Month:"$MM
在 sh
或者 bash
中:
D="2013/01/17"
DAY=$(date -d "$D" '+%d')
MONTH=$(date -d "$D" '+%m')
YEAR=$(date -d "$D" '+%Y')
echo "Day: $DAY"
echo "Month: $MONTH"
echo "Year: $YEAR"
或者如果你想要当前的日期,请使用date +%Y/%m/%d
。如果你想要将它们分开,你可以像这样做:
或者如果您需要当前日期,则使用date +%Y /%m /%d
。如果您想要将它们分开,您可以执行以下操作:
read YYYY MM DD <<<$(date +'%Y %m %d')
echo "Today is Day:$DD Month:$MM"
一个更简单的方法是:DD=$(date +%d)
MM=$(date +%m)
echo "Today is Day:$DD Month:$MM"
然而在这种情况下,你执行了两次date
,这是低效的,如果你真的很不走运,在这两行代码之间日期可能会发生改变 ;)
kent$ D="2013/01/17"
kent$ awk -F/ '{print "year:"$1,"Month:"$2,"Day:"$3}'<<<$D
year:2013 Month:01 Day:17
kent$ year=$(awk -F/ '{print $1}' <<<$D)
kent$ echo $year
2013