0

bashスクリプトで割り当てると

DATE=`date`

TODAY=${DATE:4:7}

thenの代わりに がTODAY含まれます。"Jul 2 ""Jul{2 spaces} "

そこで、最初のスペースを 2 つのスペースに変更したいと思い$TODAYます。
それ、どうやったら出来るの?
または、への最初の間違った割り当てをどのように回避でき$TODAYますか?

4

4 に答える 4

2

だけが必要な場合は、オプションJul 2を使用しないのはなぜですか?date

$ date "+%b %-d"
Jul 2
于 2013-07-02T10:25:40.143 に答える
1
  1. 引用が肝心です。
  2. $(...)バックティックの代わりに使用します。

スペースが保持されていることがわかります。

$ DATE="$(date)"
$ echo "${DATE}"
$ Tue Jul  2 11:43:21 GMT 2013
$ TODAY=${DATE:4:7}
$ echo "*${TODAY}*"
$ *Jul  2 *
于 2013-07-02T10:39:32.950 に答える
1

日付パラメーターを使用して、日付を希望どおりにフォーマットします

date "+%b %_d"

あなたが求めている2つのスペースを与えるスペースで1日を埋めます

于 2013-07-02T10:40:23.160 に答える
1

現在の月の後に 2 つのスペースが必要な場合:

date +'%b  '

または、長い名前の場合:

date +'%B  '

コマンドを変数に割り当てるには、次のように $() 演算子を使用します。

DATE=$(date +'%b  ')

そして、このように印刷します

echo "$DATE is the current month, with more spaces\!"
于 2013-07-02T10:29:38.727 に答える