web-dev-qa-db-ja.com

OSXの `cal`ツールで現在の日を強調表示するにはどうすればよいですか?

UbuntuとFedoraでは、コマンドラインでcalと入力すると、ASCIIカレンダーが表示され、現在の日が強調表示されます。

OSXでは、calと入力すると、ASCIIカレンダーが表示されますが、日が強調表示されません。

OSXで現在の日付のハイライトを取得するにはどうすればよいですか?

5
merlin2011

以下は、calでsedに置き換えられた逆のフィールドで現在の日付を出力します。

ptd=$(date -j +%d)
ctd=$(printf "\033[0;7m"$ptd"\033[0m")
cal | sed 's/'"$ptd"'/'"$ctd"'/'
2
fd0

私はubuntu、Fedora、slackware、netBSDを試しましたが、すべてのcalが自動的に当日を強調表示します。ただし、一部のcalが自動ハイライトされないことはわかっています。どちらにしても、これは機能します。

cal | grep -C 6 --color -e " $(date +%e)" -e "^$(date +%e)"

OS Xにアクセスできないため、テストできませんが。