From 9a340880942c7c712bb6021e6633118d47378a32 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 30 Oct 2012 09:45:19 +0100 Subject: [PATCH] coredumpctl: add --no-legend option Useful for completion generation. --- man/systemd-coredumpctl.xml | 7 +++++++ src/journal/coredumpctl.c | 11 +++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/man/systemd-coredumpctl.xml b/man/systemd-coredumpctl.xml index bbb421421..b80aac86c 100644 --- a/man/systemd-coredumpctl.xml +++ b/man/systemd-coredumpctl.xml @@ -98,6 +98,13 @@ pager. + + + + Do not print the column headers. + + + The following commands are understood: diff --git a/src/journal/coredumpctl.c b/src/journal/coredumpctl.c index 03f063fe5..e1b5a1997 100644 --- a/src/journal/coredumpctl.c +++ b/src/journal/coredumpctl.c @@ -45,6 +45,7 @@ static Set *matches = NULL; static FILE* output = NULL; static int arg_no_pager = false; +static int arg_no_legend = false; static Set *new_matches(void) { Set *set; @@ -138,6 +139,7 @@ static int parse_argv(int argc, char *argv[]) { enum { ARG_VERSION = 0x100, ARG_NO_PAGER, + ARG_NO_LEGEND, }; int r, c; @@ -146,6 +148,7 @@ static int parse_argv(int argc, char *argv[]) { { "help", no_argument, NULL, 'h' }, { "version" , no_argument, NULL, ARG_VERSION }, { "no-pager", no_argument, NULL, ARG_NO_PAGER }, + { "no-legend", no_argument, NULL, ARG_NO_LEGEND }, { "output", required_argument, NULL, 'o' }, { NULL, 0, NULL, 0 } }; @@ -171,6 +174,10 @@ static int parse_argv(int argc, char *argv[]) { arg_no_pager = true; break; + case ARG_NO_LEGEND: + arg_no_legend = true; + break; + case 'o': if (output) { log_error("cannot set output more than once"); @@ -242,7 +249,7 @@ static int retrieve(const void *data, return 0; } -static int print_entry(FILE* file, sd_journal *j, int had_header) { +static int print_entry(FILE* file, sd_journal *j, int had_legend) { const char _cleanup_free_ *pid = NULL, *uid = NULL, *gid = NULL, *sgnl = NULL, *exe = NULL; @@ -278,7 +285,7 @@ static int print_entry(FILE* file, sd_journal *j, int had_header) { format_timestamp(buf, sizeof(buf), t); - if (!had_header) + if (!had_legend && !arg_no_legend) fprintf(file, "%-*s %*s %*s %*s %*s %s\n", FORMAT_TIMESTAMP_MAX-1, "TIME", 6, "PID", -- 2.30.2