bashスクリプトで割り当てると
DATE=`date`
と
TODAY=${DATE:4:7}
thenの代わりに がTODAY
含まれます。"Jul 2 "
"Jul{2 spaces} "
そこで、最初のスペースを 2 つのスペースに変更したいと思い$TODAY
ます。
それ、どうやったら出来るの?
または、への最初の間違った割り当てをどのように回避でき$TODAY
ますか?
だけが必要な場合は、オプションJul 2
を使用しないのはなぜですか?date
$ date "+%b %-d"
Jul 2
$(...)
バックティックの代わりに使用します。スペースが保持されていることがわかります。
$ DATE="$(date)"
$ echo "${DATE}"
$ Tue Jul 2 11:43:21 GMT 2013
$ TODAY=${DATE:4:7}
$ echo "*${TODAY}*"
$ *Jul 2 *
日付パラメーターを使用して、日付を希望どおりにフォーマットします
date "+%b %_d"
あなたが求めている2つのスペースを与えるスペースで1日を埋めます
現在の月の後に 2 つのスペースが必要な場合:
date +'%b '
または、長い名前の場合:
date +'%B '
コマンドを変数に割り当てるには、次のように $() 演算子を使用します。
DATE=$(date +'%b ')
そして、このように印刷します
echo "$DATE is the current month, with more spaces\!"