Linuxでファイル情報を確認したい

メソ
2024-08-19
2024-08-19

ファイルの更新情報や文字コードなどの情報を確認する際に使えるコマンドについてまとめます。

ファイルの詳細情報の確認

ファイルの詳細情報を表示する場合、statコマンドを利用します。
ファイルサイズやInode情報などが表示されます。

[user@example.com]$ stat test.txt 
  File: ‘test.txt’
  Size: 13              Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 68130170    Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 1000/  user)   Gid: ( 1000/ user)
Access: 2024-08-10 15:29:50.364592044 +0900
Modify: 2024-08-10 15:28:55.733844845 +0900
Change: 2024-08-10 15:28:55.733844845 +0900
Birth: -

ワイルドカードを使い、特定ファイルの情報を複数表示することも可能です。

[user@example.com]$ stat *.txt
  File: `test1.txt'
  Size: 4769            Blocks: 16         IO Block: 4096   regular file
Device: 803h/2051d      Inode: 3429657     Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  1000/user)   Gid: (  1000/user)
Access: 2024-05-15 17:54:15.130690738 +0900
Modify: 2024-05-15 17:53:10.867960100 +0900
Change: 2024-05-15 17:53:10.879959827 +0900
  File: `test2.txt'
  Size: 1408            Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051d      Inode: 3429635     Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  1000/user)   Gid: (  1000/user)
Access: 2024-08-13 15:24:31.791530004 +0900
Modify: 2024-05-15 18:07:01.643414979 +0900
Change: 2024-05-15 18:07:01.643414979 +0900
文字コード/改行コードの確認

ファイルの文字コードはfileコマンドで確認が可能です。

[user@example.com]$ file -i test.txt 
test.txt: text/plain; charset=us-ascii

文字や改行コードを変換するnkfコマンドを利用すると、改行コードも表示されます。

[user@example.com]$ nkf --guess test.txt
ASCII (LF)
圧縮ファイルの文字コード

圧縮されたファイル情報を確認する場合にも、fileコマンドが有効です。-zオプションで文字コードを確認します。

[user@example.com log]# file -z maillog-20220501.gz 
maillog-20220501.gz: ASCII text (gzip compressed data, from Unix, last modified: Sun May  1 03:40:01 2022)
ファイルの最終参照日

ファイルの最終参照日を表示したい場合、lsに-uオプションで実行します。リスト形式でないと日時が表示されないため、-lオプションも追加します。

[user@example.com]$ ls -lu
drwxrwxr-x 4 user user 4096 Aug 13 03:35 hogefile
-rwxrwxr-x 1 user user  236 Jul 22 15:53 hoge.sh
-rw-rw-r-- 1 user user 4769 May 15 17:54 test1.txt
-rw-rw-r-- 1 user user 1408 Aug 13 15:24 test2.txt

参照時間について、
stat→更新されない
cat,less,file,nkf→更新される
のようになっていました。

テキスト情報を得るようなコマンドの場合、中身を見なくとも参照時間が更新されるようです。

まとめ

ファイル情報を確認する方法についてまとめました。ファイル内をエディタなどで閲覧せずとも、複数のコマンドを活用することで様々な情報を得ることができます。