summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2012-10-30 09:45:19 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2012-10-30 11:26:49 +0100
commit9a340880942c7c712bb6021e6633118d47378a32 (patch)
tree0280967ff7f4e0f0286cd85e62430c77576cc8c3
parent2fb7a5ce67fd6196416919535fa6a6065e0ea815 (diff)
coredumpctl: add --no-legend option
Useful for completion generation.
-rw-r--r--man/systemd-coredumpctl.xml7
-rw-r--r--src/journal/coredumpctl.c11
2 files changed, 16 insertions, 2 deletions
diff --git a/man/systemd-coredumpctl.xml b/man/systemd-coredumpctl.xml
index bbb4214213..b80aac86c5 100644
--- a/man/systemd-coredumpctl.xml
+++ b/man/systemd-coredumpctl.xml
@@ -98,6 +98,13 @@
pager.</para></listitem>
</varlistentry>
+ <varlistentry>
+ <term><option>--no-legend</option></term>
+
+ <listitem><para>Do not print the column headers.
+ </para></listitem>
+ </varlistentry>
+
</variablelist>
<para>The following commands are understood:</para>
diff --git a/src/journal/coredumpctl.c b/src/journal/coredumpctl.c
index 03f063fe5f..e1b5a19975 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",