%m-%d-%Y形式の指定された日付から、それが何日かを判断する必要がありますコマンドを手伝ってください
2017年9月1日のような日付を渡すと、出力は金曜日になるはずです。
DayOfWeek=$(date +%A)
これにより、曜日が生成されますmonday-sunday
入力日が厳密にMM-DD-YYYY
の形式である場合は、次を使用します
IFS='-' read -ra ADDR <<< "09-01-2017"
formattedDate=${ADDR[2]}-${ADDR[0]}-${ADDR[1]}
date -d $formattedDate +%A
最初の行は日付のコンポーネントをトークン化し、2番目の行はそれらを再配置します
あなたがこのようなあなたの日付を持っているならば:
d="09-01-2017"
「YYYY-MM-DD」に再フォーマットする必要があります
date -d $(echo $d|awk -F- '{print $3 "-" $1 "-" $2}') +%A # DOW
とてもシンプルです。正しいオプションを指定してdateコマンド自体を使用するだけです。
$ date -j -f '%m-%d-%Y' "09-01-2017" +'%A'
Friday