02/11/16 12:25
>>67
>>65のを使ってこんなのを作ってみた。
# *($(afterNdaysago))または*($(afterNdaysago 0))で今日変更されたファイル
# *($(afterNdaysago 1))で今日か昨日変更されたファイル
afterNdaysago () {
echo ms-$[$(print -P '%D{%H}' \* 3600 + '%D{%M}' \* 60 + '%D{%S}' + "${1:-0}" \* 86400)]
}
何月何日とかの指定が出来るようにするために再度dateを使って
書き直してみたらこんな感じ。
# *($(daterange)) で今日変更されたファイル
# *($(daterange '2 weeks ago')) で最近2週間で変更されたファイル
# *($(daterange 2002-11-01 2002-11-10)) で11月1日から11月10日に変更されたファイル
daterange () {
echo -n ms-$[$(print -Pn %D{%s}) - $(date -d "${1:-$(print -Pn %D)} 0:0:0" +%s)]
[ -n "$2" ] && echo -n ms+$[$(print -Pn %D{%s}) - $(date -d "$2 0:0:0" +%s)]
}