カテゴリ: Linuxコマンド集 更新日: 2026/01/06

find -newerオプションの使い方を完全ガイド!基準ファイルより新しいファイルを検索しよう

find -newerオプション|基準ファイルより新しいファイルを検索する
find -newerオプション|基準ファイルより新しいファイルを検索する

先生と生徒の会話形式で理解しよう

生徒

「Linuxで、あるファイルより新しく作られたファイルを探すにはどうすればいいですか?」

先生

「それならfindコマンドの-newerオプションが便利だよ。」

生徒

「たとえば、ログファイルより新しいファイルを探したいときにも使えますか?」

先生

「もちろん。基準となるファイルの更新時刻と比べて、それより新しいファイルだけを探せるんだ。さっそく詳しく見てみよう!」

1. find -newerオプションとは?

1. find -newerオプションとは?
1. find -newerオプションとは?

find -newerオプションは、Linuxのfindコマンドでよく使われる検索オプションのひとつです。指定した基準ファイルと比べて、更新日時(mtime)が新しいファイルだけを検索したいときに使います。

たとえば、「backup.logというファイルより新しく更新されたファイルを探したい」というような場面で活躍します。

2. 基本の構文を確認しよう

2. 基本の構文を確認しよう
2. 基本の構文を確認しよう

-newerオプションの基本的な使い方は、以下の通りです。


find [検索ディレクトリ] -newer [基準ファイル]

このコマンドは、「指定したファイルよりも新しい更新日時を持つファイル」を検索します。

3. 例:log.txtより新しいファイルを探す

3. 例:log.txtより新しいファイルを探す
3. 例:log.txtより新しいファイルを探す

たとえば、ホームディレクトリにあるlog.txtより新しく更新されたファイルを検索したいときは、次のように入力します。


find ~ -newer ~/log.txt
/home/user/Documents/new_doc.txt
/home/user/Desktop/updated_config.ini

この結果では、log.txtよりあとに更新されたファイルだけが表示されます。

4. -type fと組み合わせてファイルのみに限定

4. -type fと組み合わせてファイルのみに限定
4. -type fと組み合わせてファイルのみに限定

findコマンドは、通常ディレクトリも検索対象に含めます。ファイルだけを対象にしたい場合は-type fを追加しましょう。


find ~ -type f -newer ~/log.txt
/home/user/Pictures/image.jpg
/home/user/Notes/summary.txt

5. 更新日時(mtime)とは?

5. 更新日時(mtime)とは?
5. 更新日時(mtime)とは?

-newerが参照する「更新日時(mtime)」とは、ファイルの中身が変更された時刻のことです。

つまり、ファイルを開いただけでは変更されません。実際に保存操作などを行い、内容が変わったときだけ更新時刻が変わります。

確認したいときはstatコマンドを使います。


stat sample.txt
  File: sample.txt
  Size: 1024       Blocks: 8        IO Block: 4096 regular file
Access: 2025-09-14 14:23:00
Modify: 2025-09-16 11:45:10
Change: 2025-09-16 11:45:10

この中の「Modify」が更新日時(mtime)にあたります。

6. 逆に「新しくないファイル」を検索するには?

6. 逆に「新しくないファイル」を検索するには?
6. 逆に「新しくないファイル」を検索するには?

-newerは「基準ファイルより新しいファイル」ですが、逆に「古いファイル」を探したいときは少し工夫が必要です。

まずはtouchコマンドで一時的な基準ファイルを作成し、それより古いファイルを! -newerで検索します。


touch -r target.txt ref.tmp
find . ! -newer ref.tmp
./oldfile1.txt
./log/backup_old.tar

! -newerは、「新しくない(=基準より古い)」という意味になります。

7. バックアップ時の差分抽出に便利

7. バックアップ時の差分抽出に便利
7. バックアップ時の差分抽出に便利

ある時点でバックアップを取ったファイルと比較して、「それ以降に変更があったファイルだけ」を抽出したいときにも-newerは便利です。

たとえば、backup.timestampという空のファイルを保存しておき、次のように使います。


find ~/project -type f -newer backup.timestamp
~/project/src/main.c
~/project/docs/readme.md

このようにすると、バックアップ以降に変更されたファイルだけを効率よく抽出できます。

8. ファイルのタイムスタンプは自分で作れる

8. ファイルのタイムスタンプは自分で作れる
8. ファイルのタイムスタンプは自分で作れる

基準ファイルは、自分で作ることもできます。touchコマンドで空のファイルを作るだけです。


touch backup.timestamp

このbackup.timestampを基準にして-newerを使えば、任意の時刻を起点としたファイル検索が可能になります。

9. -newerXYオプションとの違い

9. -newerXYオプションとの違い
9. -newerXYオプションとの違い

-newermtime(更新時間)を基準にしますが、もっと細かく条件を変えたい場合は-newerXYというオプションがあります。

  • X=参照元の種類(a:アクセス、m:更新、c:変更)
  • Y=比較対象の種類(a:アクセス、m:更新、c:変更)

たとえば、-newermmは「基準ファイルの更新時間より新しいファイルの更新時間」という意味になります。

ただし、初心者のうちはまず-newerから覚えるのがオススメです。

10. find -newerは安全に使える優秀ツール

10. find -newerは安全に使える優秀ツール
10. find -newerは安全に使える優秀ツール

find -newerは、日時を正確に比較できる優秀な検索オプションです。特定のファイルを基準にした差分検索や、バックアップ時の確認、ログ調査など幅広く使えます。

初心者でも扱いやすく、失敗の少ないコマンドなので、ぜひ積極的に活用してみてください。

関連記事:
カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
New2
ファイル・ディレクトリ操作
realpath -eオプションの使い方を解説!Linuxで存在するファイルのみ絶対パスを取得する方法
New3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
New4
ファイル・ディレクトリ操作
touch --referenceオプションの使い方を完全ガイド!初心者でもわかるタイムスタンプのコピー方法
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cpコマンドとは?Linuxでファイルやディレクトリをコピーする基本操作を初心者向けに解説
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
Linuxのls --full-timeオプションを完全ガイド!初心者でもわかるタイムスタンプのフル表示方法