同じフォルダーに時間と日のファイルがあります。
data-2015-06-06-00.tsv
data-2015-06-06-01.tsv
data-2015-06-06-02.tsv
data-2015-06-06-03.tsv
data-2015-06-06.tsv
data-2015-06-07-03.tsv
data-2015-06-07-02.tsv
data-2015-06-07.tsv
ファイルリストから一意の毎日のレポートを取得する方法。
data-2015-06-06.tsv data-2015-06-07.tsvのみが必要です。
答え1
3つの追加オプション:
ls | grep ^data-...........tsv
または:
ls | grep ^data-"[[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}.tsv"
または:
ls | grep ^data-[1-2][0-1][0-9][0-9]-[0-1][0-9]-[0-1][0-9].tsv
答え2
今日:
ls date-$(date +%Y-%m-%d)*
昨日:
ls date-$(date +%Y-%m-%d -d yesterday )*
どこ
date +%Y-%m-%d
日付形式を指定します。-d yesterday
昨日の日付を使う$( )
コマンドを設定して実行し、出力を文字列として使用します。
ファイルの最後の変更時刻を渡すことができないとします。
編集する:
今日から毎時間避けてください:
ls date-$(date +%Y-%m-%d).tsv
日常的な使用については@lcd047さんからのみ回答を受けました。