演習8-5 K&R プログラミング言語C
2010年03月24日
演習8-5
リンク数 (st_nlink
) と最後に inode
が変更された時間 (st_ctime
) を表示させてみる。
#include <time.h> #define MAX_TIME_STR 100 void parseTm(const struct tm *tp, char *str) { strftime(str, MAX_TIME_STR, "%b %d %Y %H:%M:%S", tp); } /* fsize : ファイル "name" のサイズを印字する */ void fsize(char *name) { struct stat stbuf; char timestr[MAX_TIME_STR]; if (stat(name, &stbuf) == -1) { fprintf(stderr, "fsize : can't access %s\n", name); return; } if ((stbuf.st_mode & S_IFMT) == S_IFDIR) { dirwalk(name, fsize); } parseTm(localtime(&stbuf.st_ctime), timestr); printf("%4d %8ld %s %s\n", stbuf.st_nlink, stbuf.st_size, timestr, name); }
実行結果
$ ./fsize * 1 155 Mar 16 2010 12:00:36 Makefile 1 10560 Mar 16 2010 12:39:46 fsize 1 3763 Mar 16 2010 12:39:44 main.c 1 10244 Mar 16 2010 12:39:46 main.o 1 840 Mar 16 2010 12:02:18 my_dirent.h
プログラミング言語C 第2版 ANSI規格準拠
posted with amazlet at 09.11.27
B.W. カーニハン D.M. リッチー
共立出版
売り上げランキング: 9726
共立出版
売り上げランキング: 9726