GNU/Linux >> Linux の 問題 >  >> Linux

Linux – Linuxで現在の日付のファイルを取得しますか?

通常、date +%d 出力08を提供します 現在の日付、2017年8月10日。しかし、ls -lrtを実行すると パス上の日付形式は、Oct 8 15:03のようなものです。 、では、現在の日付のファイルを取得するにはどうすればよいですか?

コマンドを使用しています

ls -lrt XYZ.LOG* |grep "$(date +'%b %d')" |awk '{print $9}'

ただし、今日の日付(2017年8月10日)のファイルは表示されませんが、任意の月の10〜31日の日付の正しい出力が表示されます。

承認された回答:

これは少しごまかしていますが、機能します。

まず、特定のタイムスタンプ、つまり深夜の空の参照ファイルを作成します。

touch -d "$(date +%FT00:00:00)" /tmp/midnight

次に、このファイルよりも新しいファイルを見つけます:

find . -type f -newer /tmp/midnight

lsが必要な場合 -findからの出力のように パス名だけでなく:

find . -type f -newer /tmp/midnight -ls

パターンXYZ.LOG*に一致するファイルを検索する場合 :

find . -type f -name 'XYZ.LOG*' -newer /tmp/midnight -ls

GNU findをお持ちの場合 、一時ファイルをバイパスして使用できます

find . -type f -newermt 0

深夜以降にファイルを変更します。

関連:なぜ `ls`を解析しないのですか?


Linux
  1. LinuxでMimeタイプのアプリケーションを見つける方法は?

  2. Linuxの検索コマンド

  3. Linuxでファイルを検索するには、検索と検索を使用します

  1. Linuxで最大のファイルとディレクトリを探す

  2. Linux の find コマンドを使用してファイルを検索する方法

  3. Linux で変更日に基づいてファイルをコピーする

  1. コンソールで大きなファイルをチェックする方法

  2. Linux:デバイスに使用されているデバイスドライバーを見つける方法は?

  3. Linux ですべてのスパース ファイルを見つける方法