statは、ファイルの情報や状態を取得する。
指定されたパスのファイル情報をstat構造体に格納する。
"test.txt"のファイルサイズを調べる。
$ ls stat stat.c test.txt $ vi test.txt $ ls -al 合計 28 drwxrwxr-x. 2 h.miura h.miura 4096 8月 14 11:10 . drwxrwxr-x. 3 h.miura h.miura 4096 8月 14 10:53 .. -rwxrwxr-x. 1 h.miura h.miura 8736 8月 14 11:05 stat -rw-rw-r--. 1 h.miura h.miura 712 8月 14 11:05 stat.c -rw-rw-r--. 1 h.miura h.miura 6 8月 14 11:10 test.txt $ hexdump -C test.txt 00000000 41 42 43 44 45 0a |ABCDE.| 00000006 $ vi stat.c $ gcc stat.c -o stat $ ./stat sst.st_size = 6 $
ls -alでもわかるが、いちおうhexdump -C test.txtでバイナリの中身まで確認。
そして、最終的にstatでもサイズが6であることが証明された。
Sample/unixsyscall/stat/stat/src/stat at master · bg1bgst333/Sample · GitHub