これらの日付コマンドの1つが機能し、他のコマンドが機能しないのはなぜですか?

これらの日付コマンドの1つが機能し、他のコマンドが機能しないのはなぜですか?
[user@mymachine folder]$ echo `date --date=tomorrow +%Y%m%d`
20160802
[user@mymachine folder]$ echo `date -d=tomorrow +%Y%m%d`
date: invalid date `=tomorrow'

違いがある場合は、Centos 5を使用しています。

答え1

短いオプションや Unix スタイルのオプションは通常引数とスペースで区切られますが、場合によってはスペースは厳密には必要ありません。

例えば

echo `date -dtomorrow +%Y%m%d`

そして

echo `date -d tomorrow +%Y%m%d`

役に立つだろう

ただし、次のような状況が発生した場合

エコdate -d=tomorrow +%Y%m%d

=tomorrowパラメータとして扱われますが、d有効な日付文字列を生成しません。

関連情報