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

Linuxでのアクセス、変更日時に基づいてファイルを検索して並べ替える

特定のフォルダに同様の種類のファイルを整理する方法はすでにわかっています。 LinuxおよびUnixライクなオペレーティングシステム。その方法では、同様の種類のファイルをフォルダーに整理する方法を学びました。つまり、ファイルは拡張子に基づいて整理されています。ファイルが新しいか古いかはわかりません。同じ種類のファイルをフォルダに入れるだけです。今日、このガイドでは、拡張子ではなく、アクセスと変更の日時に基づいてファイルを検索して並べ替えます。特定の日時にアクセスまたは変更された特定のファイルを見つけたい場合は、正しい方向に進んでいます。続きを読む。

推奨ダウンロード -無料のチートシート:「Linuxコマンドラインチートシート」

Linuxでのアクセス、変更日時に基づいてファイルを検索および並べ替える

ファイルを検索して並べ替えるために、追加のアプリケーションをインストールする必要はありません。このガイドでは、3つのLinuxコマンド、つまり lsを使用します。 、検索 および並べ替え 。これらのコマンドはLinuxカーネルの一部であるため、わざわざインストールしないでください。

すでにご存知かもしれませんが、 ls コマンドは、変更またはアクセスの日時、アクセス許可、サイズ、所有者、グループなどの追加情報を含むディレクトリの内容を一覧表示します。指定されたディレクトリのエントリをアルファベット順に並べ替えます。ディレクトリについて言及しなかった場合は、現在の作業ディレクトリの内容が一覧表示されます。

検索 コマンドは、ディレクトリ階層内のファイルを検索するために使用されます。

並べ替え コマンドは、テキストファイルの行を並べ替え、すべてのFILEの並べ替えられた連結を標準出力に書き込みます。

1。 lsコマンドを使用して最終アクセス時間に基づいてファイルを検索およびソートします

次のコマンドは、最終アクセス時間に基づいてファイルを一覧表示します。最新のファイルが最初に一覧表示されます。

$ ls -ltu

出力例:

total 104
drwxr-xr-x 18 sk users 4096 May 3 18:02 Personal
drwxr-xr-x 3 sk users 4096 May 3 11:57 Notebooks
drwxr-xr-x 9 sk users 4096 May 3 11:57 Official
drwxrwxr-x 3 sk users 4096 May 3 11:57 en-TED
drwxr-xr-x 5 sk users 4096 May 3 11:57 Soft_Backup
drwxr-xr-x 9 sk users 4096 May 3 11:57 'VirtualBox VMs'
drwxr-xr-x 2 sk users 4096 May 3 11:57 Wallpapers
drwxr-xr-x 2 sk users 4096 May 3 11:57 Public
drwxr-xr-x 2 sk users 4096 May 3 11:57 Documents
drwxr-xr-x 2 sk users 4096 May 3 11:57 Music
drwxr-xr-x 2 sk users 4096 May 3 11:57 Videos
drwxr-xr-x 2 sk users 4096 May 3 11:56 Desktop
drwxr-xr-x 2 sk users 4096 May 3 11:56 Templates
drwxr-xr-x 5 sk users 4096 May 2 20:53 Entertainment
-rw-r--r-- 1 sk users 951 May 2 20:52 'pre code.txt'
-rw-r--r-- 1 sk users 50 May 2 20:52 file.txt
drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads
drwxr-xr-x 5 sk users 12288 May 2 20:13 Pictures

ここで

  • -u -アクセス時間で並べ替え、最新のものから順に

2。 lsコマンドを使用して変更時間に基づいてファイルを検索およびソートします

変更時間に基づいてファイルを一覧表示するには、次のコマンドを実行します。

$ ls -lt

ここで

  • -l <​​/ strong> -長いリスト形式を示します
  • -t -変更時刻で並べ替え、最新のものから順に並べ替えます。

出力例:

total 104
drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads
drwxr-xr-x 5 sk users 12288 May 1 17:32 Pictures
drwxr-xr-x 9 sk users 4096 May 1 16:45 'VirtualBox VMs'
drwxr-xr-x 2 sk users 4096 Apr 24 20:30 Documents
drwxr-xr-x 2 sk users 4096 Apr 11 13:02 Desktop
-rw-r--r-- 1 sk users 951 Apr 7 20:20 'pre code.txt'
drwxr-xr-x 9 sk users 4096 Mar 27 19:31 Official
-rw-r--r-- 1 sk users 50 Mar 23 20:24 file.txt
drwxr-xr-x 2 sk users 4096 Mar 21 17:43 Videos
drwxr-xr-x 3 sk users 4096 Mar 14 16:32 Notebooks
drwxr-xr-x 2 sk users 4096 Jan 7 14:55 Music
drwxr-xr-x 18 sk users 4096 Dec 19 14:36 Personal
drwxrwxr-x 3 sk users 4096 Nov 30 01:57 en-TED
drwxr-xr-x 5 sk users 4096 Aug 20 2016 Entertainment
drwxr-xr-x 2 sk users 4096 May 11 2016 Public
drwxr-xr-x 2 sk users 4096 May 11 2016 Templates
drwxr-xr-x 2 sk users 4096 May 9 2016 Wallpapers
drwxr-xr-x 5 sk users 4096 May 4 2016 Soft_Backup

上記のコマンドは、変更時間に基づいて現在の作業ディレクトリのファイルを並べ替えます。最新のファイルが最初に表示されます。

変更時刻に基づいて特定のディレクトリのファイルを一覧表示するには、次のように入力します。

$ ls -lt ~/Downloads/

ファイルを逆の順序で一覧表示するには、つまり最も古いファイルを最初に一覧表示するには、'r'を使用します 以下のようなフラグ:

$ ls -ltr

3。 最終変更時刻に基づいてファイルを検索して並べ替えます lsコマンドの使用

このコマンドは、最終変更時刻に基づいてファイルを一覧表示します。つまり、このコマンドは、ステータス情報(所有者、グループ、権限、サイズなど)が最近変更されたファイルを最初に一覧表示します。

$ ls -ltc

出力例:

total 104
drwxr-xr-x 11 sk users 20480 May 2 20:34 Downloads
drwxr-xr-x 5 sk users 12288 May 1 17:32 Pictures
drwxr-xr-x 9 sk users 4096 May 1 16:45 'VirtualBox VMs'
drwxr-xr-x 2 sk users 4096 Apr 24 20:30 Documents
drwxr-xr-x 2 sk users 4096 Apr 11 13:02 Desktop
-rw-r--r-- 1 sk users 50 Apr 8 16:28 file.txt
-rw-r--r-- 1 sk users 951 Apr 7 20:20 'pre code.txt'
drwxr-xr-x 9 sk users 4096 Mar 27 19:31 Official
drwxr-xr-x 2 sk users 4096 Mar 21 17:43 Videos
drwxr-xr-x 3 sk users 4096 Mar 14 16:32 Notebooks
drwxrwxr-x 3 sk users 4096 Jan 18 12:36 en-TED
drwxr-xr-x 2 sk users 4096 Jan 7 14:55 Music
drwxr-xr-x 18 sk users 4096 Dec 19 14:36 Personal
drwxr-xr-x 5 sk users 4096 Aug 20 2016 Entertainment
drwxr-xr-x 2 sk users 4096 May 11 2016 Public
drwxr-xr-x 2 sk users 4096 May 11 2016 Templates
drwxr-xr-x 2 sk users 4096 May 9 2016 Wallpapers
drwxr-xr-x 5 sk users 4096 May 9 2016 Soft_Backup

ここで

  • -c -最終変更時刻で並べ替え

4。日付に基づいてファイルを検索して並べ替える

次のコマンドは、最後にアクセスされた日時に基づいてファイルを一覧表示します。最新のファイルが最初に一覧表示されます。

$ find /home/sk/ostechnix/ -type f -printf "\n%AD %AT %p" | head -n 10

出力例:

04/27/17 15:51:16.4508342970 /home/sk/ostechnix/The Devops toolkit.pdf
04/27/17 15:51:17.1375009660 /home/sk/ostechnix/THE LINUX COMMAND LINE.pdf
04/27/17 15:51:12.9508342850 /home/sk/ostechnix/Google power search.pdf
04/27/17 15:51:10.3475009420 /home/sk/ostechnix/Docker.pdf
04/27/17 15:51:14.0108342880 /home/sk/ostechnix/Linux Shell Scripting.pdf
04/27/17 15:51:17.4208343000 /home/sk/ostechnix/WpPMaq8.jpg
04/27/17 15:51:12.7675009510 /home/sk/ostechnix/DoubleClick_Mobile_Web_Speed_Toolkit.pdf
04/27/17 15:51:01.9308342460 /home/sk/ostechnix/Ed Sheeran - Shape Of You.mp3
04/27/17 15:51:02.7341675830 /home/sk/ostechnix/tor-browser_en-US/start-tor-browser.desktop

上記の出力では、最初の列はファイルの最後にアクセスされた日付を示し、2番目の列は最後にアクセスされた時刻を示し、3番目の列はファイルの名前を示します。ここで、「head-n10」はファイル数ではありません。空白を含む出力のエントリ数です。

また、「sort」コマンドと「ls」コマンドを使用して、以下のように、最後にアクセスした月、日付、時刻に基づいてファイルを一覧表示できます。

$ ls -l ostechnix/ | sort -k6M -k7n | head -n 10

出力例:

total 44024
drwx------ 3 sk users 4096 Apr 27 15:51 tor-browser_en-US
drwxr-xr-x 3 sk users 4096 Apr 27 15:51 Arch master
-rw-r--r-- 1 sk users 183396 Apr 27 15:51 Linux commandline cheat sheet.pdf
-rw-r--r-- 1 sk users 2031375 Apr 27 15:51 Google power search.pdf
-rw-r--r-- 1 sk users 233955 Apr 27 15:51 bash_tips.pdf
-rw-r--r-- 1 sk users 2597261 Apr 27 15:51 Docker.pdf
-rw-r--r-- 1 sk users 270623 Apr 27 15:51 sag-0.6.1.pdf.gz
-rw-r--r-- 1 sk users 3857569 Apr 27 15:51 THE LINUX COMMAND LINE.pdf
-rw-r--r-- 1 sk users 3902301 Apr 27 15:51 Ed Sheeran - Shape Of You.mp3

ここで

  • -k6M -出力に月ごとにファイルを一覧表示します(6番目のフィールド)。
  • -k7n -出力の日付ごと(7番目のフィールド)にファイルを一覧表示します。

そして、それがすべてです。 Linuxでのアクセス、変更日時に基づいてファイルを検索およびソートする方法をマスターしました。上記の例でわかるように、ファイルの並べ替えはかなり簡単です。詳細については、各コマンドのマニュアルページを参照してください。

$ man ls
$ man find
$ man sort

Linux
  1. Linux –ファイルの作成日を見つける方法は?

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

  3. 日付範囲内で作成されたファイルを検索

  1. Linuxで変更日時に基づいてファイルを検索およびソートする方法

  2. プロのようにLinuxでファイルとディレクトリを探す

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

  1. findおよびduコマンドを使用してLinuxで大きなファイルを検索する方法

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

  3. ファイルを再帰的にリストし、変更時間でソートする方法は?