From a362c069a9d7bec789091d3a49eebf611e2b1985 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 10 Jan 2020 12:07:28 +0900 Subject: [PATCH] systemd-mount: add --full command line option --- man/systemd-mount.xml | 9 +++++++++ src/mount/mount-tool.c | 12 +++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/man/systemd-mount.xml b/man/systemd-mount.xml index 82ac61a447f..a6e6dd9b483 100644 --- a/man/systemd-mount.xml +++ b/man/systemd-mount.xml @@ -95,6 +95,15 @@ + + + + + + Do not ellipsize the output when is specified. + + + diff --git a/src/mount/mount-tool.c b/src/mount/mount-tool.c index 69f140fb3e0..babd82704c0 100644 --- a/src/mount/mount-tool.c +++ b/src/mount/mount-tool.c @@ -46,6 +46,7 @@ enum { static bool arg_no_block = false; static PagerFlags arg_pager_flags = 0; static bool arg_legend = true; +static bool arg_full = false; static bool arg_ask_password = true; static bool arg_quiet = false; static BusTransport arg_transport = BUS_TRANSPORT_LOCAL; @@ -92,6 +93,7 @@ static int help(void) { " --no-block Do not wait until operation finished\n" " --no-pager Do not pipe output into a pager\n" " --no-legend Do not show the headers\n" + " -l --full Do not ellipsize output\n" " --no-ask-password Do not prompt for password\n" " -q --quiet Suppress information messages during runtime\n" " --user Run as user unit\n" @@ -150,6 +152,7 @@ static int parse_argv(int argc, char *argv[]) { { "no-block", no_argument, NULL, ARG_NO_BLOCK }, { "no-pager", no_argument, NULL, ARG_NO_PAGER }, { "no-legend", no_argument, NULL, ARG_NO_LEGEND }, + { "full", no_argument, NULL, 'l' }, { "no-ask-password", no_argument, NULL, ARG_NO_ASK_PASSWORD }, { "quiet", no_argument, NULL, 'q' }, { "user", no_argument, NULL, ARG_USER }, @@ -182,7 +185,7 @@ static int parse_argv(int argc, char *argv[]) { if (strstr(program_invocation_short_name, "systemd-umount")) arg_action = ACTION_UMOUNT; - while ((c = getopt_long(argc, argv, "hqH:M:t:o:p:AuG", options, NULL)) >= 0) + while ((c = getopt_long(argc, argv, "hqH:M:t:o:p:AuGl", options, NULL)) >= 0) switch (c) { @@ -204,6 +207,10 @@ static int parse_argv(int argc, char *argv[]) { arg_legend = false; break; + case 'l': + arg_full = true; + break; + case ARG_NO_ASK_PASSWORD: arg_ask_password = false; break; @@ -1393,6 +1400,9 @@ static int list_devices(void) { if (!table) return log_oom(); + if (arg_full) + table_set_width(table, 0); + r = table_set_sort(table, 0, SIZE_MAX); if (r < 0) return log_error_errno(r, "Failed to set sort index: %m");