diff options
author | Dave Reisner | 2012-03-18 04:36:33 +0100 |
---|---|---|
committer | Karel Zak | 2012-03-20 09:53:47 +0100 |
commit | eda399b9950d80a1cc83c9ac50e0262fc6772807 (patch) | |
tree | 7f3d16a3f07748897a673e6362681e8865bcbcd4 /misc-utils/findmnt.c | |
parent | tunelp: remove old, now unneeded header (diff) | |
download | kernel-qcow2-util-linux-eda399b9950d80a1cc83c9ac50e0262fc6772807.tar.gz kernel-qcow2-util-linux-eda399b9950d80a1cc83c9ac50e0262fc6772807.tar.xz kernel-qcow2-util-linux-eda399b9950d80a1cc83c9ac50e0262fc6772807.zip |
findmnt: add -D, --df option to imitate df(1)
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
Diffstat (limited to 'misc-utils/findmnt.c')
-rw-r--r-- | misc-utils/findmnt.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/misc-utils/findmnt.c b/misc-utils/findmnt.c index 6bec6866d..acaedfc56 100644 --- a/misc-utils/findmnt.c +++ b/misc-utils/findmnt.c @@ -885,6 +885,7 @@ static void __attribute__((__noreturn__)) usage(FILE *out) fprintf(out, _( " -a, --ascii use ASCII chars for tree formatting\n" " -c, --canonicalize canonicalize printed paths\n" + " -D, --df imitate the output of df(1)\n" " -d, --direction <word> direction of search, 'forward' or 'backward'\n" " -e, --evaluate convert tags (LABEL/UUID) to device names\n" " -F, --tab-file <path> alternative file for --fstab, --mtab or --kernel options\n" @@ -931,7 +932,7 @@ int main(int argc, char *argv[]) struct libmnt_table *tb = NULL; char **tabfiles = NULL; int direction = MNT_ITER_FORWARD; - int i, c, rc = -1, timeout = -1; + int i, c, rc = -1, timeout = -1, df_output = 0; int ntabfiles = 0, tabtype = 0; /* table.h */ @@ -941,6 +942,7 @@ int main(int argc, char *argv[]) { "ascii", 0, 0, 'a' }, { "canonicalize", 0, 0, 'c' }, { "direction", 1, 0, 'd' }, + { "df", 0, 0, 'D' }, { "evaluate", 0, 0, 'e' }, { "first-only", 0, 0, 'f' }, { "fstab", 0, 0, 's' }, @@ -977,7 +979,7 @@ int main(int argc, char *argv[]) tt_flags |= TT_FL_TREE; while ((c = getopt_long(argc, argv, - "acd:ehifF:o:O:p::Pklmnrst:uvRS:T:w:", + "acDd:ehifF:o:O:p::Pklmnrst:uvRS:T:w:", longopts, NULL)) != -1) { switch(c) { case 'a': @@ -986,6 +988,10 @@ int main(int argc, char *argv[]) case 'c': flags |= FL_CANONICALIZE; break; + case 'D': + tt_flags &= ~TT_FL_TREE; + df_output = 1; + break; case 'd': if (!strcmp(optarg, "forward")) direction = MNT_ITER_FORWARD; @@ -1095,6 +1101,16 @@ int main(int argc, char *argv[]) } } + if (df_output) { + columns[ncolumns++] = COL_SOURCE; + columns[ncolumns++] = COL_FSTYPE; + columns[ncolumns++] = COL_SIZE; + columns[ncolumns++] = COL_USED; + columns[ncolumns++] = COL_AVAIL; + columns[ncolumns++] = COL_USEPERC; + columns[ncolumns++] = COL_TARGET; + } + /* default columns */ if (!ncolumns) { if (flags & FL_POLL) |