Example #1
0
void df_all(void)
{
    FILE *f;
    struct mntent *mnt;
    
    f = setmntent("/etc/mtab", "r");
    if (f) {
        while (mnt = getmntent(f))
                df_path(mnt->mnt_dir, mnt->mnt_fsname, mnt->mnt_dir);
        endmntent(f);
    } else {
        fprintf(stderr, "df: cannot open /etc/mtab: %s\n", strerror(errno));
    }
}
Example #2
0
void df_all(void)
{
    FILE *f;
	char tmp[MTAB_LINE];
	char* dev;
	char* mntpt;
    
    f = fopen("/etc/mtab", "r");
    if (f) {
        while (fgets(tmp, MTAB_LINE, f)) {
	    dev = strtok(tmp, " ");
	    mntpt = strtok(NULL, " ");
            if (mntpt)
                df_path(mntpt);
        }
        fclose(f);
    } else {
        fprintf(stderr, "df: cannot open /etc/mtab: %s\n", strerror(errno));
    }
}
Example #3
0
int main(int argc, char *argv[])
{
    char *p;
    int i;

    for (i = 1; i < argc; ++i) {
        p = argv[i];
        if (p[0] == '-') {
            for (++p; *p; ++p) {
                switch (*p) {
                case 'i': iflag = 1; break;
                case 'k': kflag = 1; break;
                case 'f': fflag = 1; break;
                default:
                    printf("usage: %s [-ikf]\n", argv[0]);
                    return 1;
                }
            }
        } else {
            break;
        }
    }

    printf("%-16s %6s %6s %6s %6s %s\n",
           "Filesystem",
            iflag ? "Inodes" : kflag ? "KBytes" : "Blocks",
            iflag ? "IUsed" : "Used",
            iflag ? "IFree" : "Free",
            iflag ? (fflag ? "%IFree" : "%IUsed") : (fflag ? "%Free" : "%Used"),
            "Mounted on");

    if (i < argc) {
        for (; i < argc; ++i) {
            df_path(argv[i]);
        }
    } else {
        df_all();
    }

    return 0;
}