"Enter your YEAR and MONTH" echo YEAR read YEAR echo MONTH read MONTH echo $YEAR"年"$MONTH"月" cal=("日" "月" "火" "水" "木" "金" "土") X=`expr $((YEAR % 4))` if [ $MONTH = 1 ] then y=`expr $((YEAR - 1))` m=`expr $((MONTH + 12))` y1=`expr $((y / 4))` y2=`expr $((y / 100))` y3=`expr $((y / 400))` m1=`expr $((((m * 13) + 8) / 5))` s=`expr $(((y + y1 - y2 + y3 + m1 + 1) % 7))` sp=`expr $s` t=1 while : do if [ $t -gt $sp ] then break fi u=`expr $t + 6` cal[$u]=" " t=`expr $t + 1` done t=1 v=31 while : do if [ $t -gt $v ] then break fi u=`expr $t + 6 + $sp` cal[$u]=$t t=`expr $t + 1` done printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" elif [ $MONTH = 2 ] then if [ $X = 0 ] then y=`expr $((YEAR - 1))` m=`expr $((MONTH + 12))` y1=`expr $((y / 4))` y2=`expr $((y / 100))` y3=`expr $((y / 400))` m1=`expr $((((m * 13) + 8) / 5))` s=`expr $(((y + y1 - y2 + y3 + m1 + 1) % 7))` sp=`expr $s` t=1 while : do if [ $t -gt $sp ] then break fi u=`expr $t + 6` cal[$u]=" " t=`expr $t + 1` done t=1 v=29 while : do if [ $t -gt $v ] then break fi u=`expr $t + 6 + $sp` cal[$u]=$t t=`expr $t + 1` done printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" else y=`expr $((YEAR - 1))` m=`expr $((MONTH + 12))` y1=`expr $((y / 4))` y2=`expr $((y / 100))` y3=`expr $((y / 400))` m1=`expr $((((m * 13) + 8) / 5))` s=`expr $(((y + y1 - y2 + y3 + m1 + 1) % 7))` sp=`expr $s` t=1 while : do if [ $t -gt $sp ] then break fi u=`expr $t + 6` cal[$u]=" " t=`expr $t + 1` done t=1 v=29 while : do if [ $t -gt $v ] then break fi u=`expr $t + 6 + $sp` cal[$u]=$t t=`expr $t + 1` done printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" fi elif [ $MONTH = 4 ] || [ $MONTH = 6 ] || [ $MONTH = 9 ] || [ $MONTH = 11 ] then y=`expr $YEAR` m=`expr $MONTH` y1=`expr $((y / 4))` y2=`expr $((y / 100))` y3=`expr $((y / 400))` m1=`expr $((((m * 13) + 8) / 5))` s=`expr $(((y + y1 - y2 + y3 + m1 + 1) % 7))` sp=`expr $s` t=1 while : do if [ $t -gt $sp ] then break fi u=`expr $t + 6` cal[$u]=" " t=`expr $t + 1` done t=1 v=30 while : do if [ $t -gt $v ] then break fi u=`expr $t + 6 + $sp` cal[$u]=$t t=`expr $t + 1` done printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" else y=`expr $YEAR` m=`expr $MONTH` y1=`expr $((y / 4))` y2=`expr $((y / 100))` y3=`expr $((y / 400))` m1=`expr $((((m * 13) + 8) / 5))` s=`expr $(((y + y1 - y2 + y3 + m1 + 1) % 7))` sp=`expr $s` t=1 while : do if [ $t -gt $sp ] then break fi u=`expr $t + 6` cal[$u]=" " t=`expr $t + 1` done t=1 v=31 while : do if [ $t -gt $v ] then break fi u=`expr $t + 6 + $sp` cal[$u]=$t t=`expr $t + 1` done printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" fi echo $YEAR"年"$MONTH"月" > q2.txt printf "%2s %2s %2s %2s %2s %2s %2s\n" "${cal[@]}" >> q2.txt