当你输入时ls -l
,第一行有一个数字标有“ total 22037
”?这个数字是什么意思?我正在尝试编写我自己的ls -l
( 用 C 语言) 版本,如何获取或计算该值?
谢谢你的帮助。
答案1
实施标准UNIX 命令,你应该检查 POSIX,例如http://pubs.opengroup.org/onlinepubs/9699919799/。对于ls
命令:http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html你会发现输出的格式:
如果指定了 -l、-n、-s、-g 或 -o 选项中的任何一个,则目录中的每个文件列表前面应有一个状态行,指示目录中的文件占用的文件系统块数如果未指定 -k 选项,则以 512 字节为单位;如果指定 -k 选项,则以 1024 字节为单位;如果需要,则向上舍入到下一个整数单位。在 POSIX 语言环境中,格式应为:
“总计 %u\n”,