summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bash-completion/lsns1
-rw-r--r--sys-utils/lsns.83
-rw-r--r--sys-utils/lsns.c9
3 files changed, 13 insertions, 0 deletions
diff --git a/bash-completion/lsns b/bash-completion/lsns
index 035f43b2a..8964606cb 100644
--- a/bash-completion/lsns
+++ b/bash-completion/lsns
@@ -40,6 +40,7 @@ _lsns_module()
--list
--noheadings
--output
+ --output-all
--task
--raw
--notruncate
diff --git a/sys-utils/lsns.8 b/sys-utils/lsns.8
index 90009a780..aba372669 100644
--- a/sys-utils/lsns.8
+++ b/sys-utils/lsns.8
@@ -51,6 +51,9 @@ to get a list of all supported columns.
The default list of columns may be extended if \fIlist\fP is
specified in the format \fB+\fIlist\fP (e.g. \fBlsns \-o +PATH\fP).
.TP
+.B \-\-output\-all
+Output all available columns.
+.TP
.BR \-p , " \-\-task " \fIpid\fP
Display only the namespaces held by the process with this \fIpid\fR.
.TP
diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c
index 7264817a8..3050b505d 100644
--- a/sys-utils/lsns.c
+++ b/sys-utils/lsns.c
@@ -906,6 +906,7 @@ static void __attribute__((__noreturn__)) usage(void)
fputs(_(" -l, --list use list format output\n"), out);
fputs(_(" -n, --noheadings don't print headings\n"), out);
fputs(_(" -o, --output <list> define which output columns to use\n"), out);
+ fputs(_(" --output-all output all columns\n"), out);
fputs(_(" -p, --task <pid> print process namespaces\n"), out);
fputs(_(" -r, --raw use the raw output format\n"), out);
fputs(_(" -u, --notruncate don't truncate text in columns\n"), out);
@@ -931,11 +932,15 @@ int main(int argc, char *argv[])
int c;
int r = 0;
char *outarg = NULL;
+ enum {
+ OPT_OUTPUT_ALL = CHAR_MAX + 1
+ };
static const struct option long_opts[] = {
{ "json", no_argument, NULL, 'J' },
{ "task", required_argument, NULL, 'p' },
{ "help", no_argument, NULL, 'h' },
{ "output", required_argument, NULL, 'o' },
+ { "output-all", no_argument, NULL, OPT_OUTPUT_ALL },
{ "notruncate", no_argument, NULL, 'u' },
{ "version", no_argument, NULL, 'V' },
{ "noheadings", no_argument, NULL, 'n' },
@@ -980,6 +985,10 @@ int main(int argc, char *argv[])
case 'o':
outarg = optarg;
break;
+ case OPT_OUTPUT_ALL:
+ for (ncolumns = 0; ncolumns < ARRAY_SIZE(infos); ncolumns++)
+ columns[ncolumns] = ncolumns;
+ break;
case 'V':
printf(UTIL_LINUX_VERSION);
return EXIT_SUCCESS;