>>170,169
機能削除してるくせにオレオレもなのか...?? GNUソースベースというより新規なのかな?

BusyBox環境を試す気は全くないので何とくなくこんなんなんだろうという仮定で、
SEC2DATE="$(date --help 2>&1 | awk '
/-f fmt/{ print "date -j -f %s "; m=1; exit 0; } # BSD
/-D FMT/{ print "date -D %s -d "; m=1; exit 0; } # BusyBox case1
/-D FMT/{ print "date -d 1970.01.01-00:00:"; m=1; exit 0; } # BusyBox case2
END{ if(!m) print "date -d @"; }')" # default to GNU
な感じで吸収してみた(判断材料とかはお好きに。OSの種類で決め打ちとかな)

case1 なら BSDに合わせろw いや、どれもどこかに合わせろw
いや、その役割はPOSIXか。必要最低限のこれらだけを入れてくれればCalendar(しつこいw)として「使える」のに(システムタイムにこだわるならBSDのが素直かなw)

secs=$(date +%s)
[ $($SEC2DATE$secs +%H) -ge 10 ] && secs=$((secs + 86400))
$SEC2DATE$secs +'%Y-%m-%d 10:00:00'
実際はこれだけをしたいだけなのにな。どれかに統一されてたらもっと素直な表記で書けるのに

date回数に煩いんだったら
read secs hh < <(date +'%s %H')
[ $hh -ge 10 ] && secs=$((secs + 86400))
$SEC2DATE$secs +'%Y-%m-%d 10:00:00'
とかにでもとかとか。ある意味もっと素直かなw