BASHに曜日を追加するときの日付形式の表現

BASHに曜日を追加するときの日付形式の表現

そのため、Bashで日付計算を作成していますが、日付形式の問題が発生しました。たぶん私は間違って書いたかもしれません。どんなウェブサイトでも役に立ちます。

#!/bin/bash

echo -e "bill date"
read date

      d1=$(date -d  "$date +27 days")
      d2=$(date -d  "$date +45 days" )


echo "$(tput bold setaf 3)Suspension date = $d1" 
echo "$(tput bold)$(tput setaf 1)Termination date = $d2"

私が望む出力は次のとおりです。停止日= 2017年11月6日月曜日

私が得るものは一時停止日= 2017年11月6日月曜日00:00:00 EST 2017です。

+ '%a%B%d%Y'のいくつかのバリエーションと場所を試しましたが、無効な日付エラーが引き続き発生します。

今まで私は何も当たらず、テーブルと壁に頭をぶつけました。

ベストアンサー1

日付書式文字列の使用:

d1="$(date -d "$date +27 days" +"%a %b %d %Y")"

これはすべて、ユーザー入力を解析できる形式によって異なりますdate -d

おすすめ記事