diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2012-11-17 15:27:59 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2012-11-17 15:32:04 +0100 |
commit | e3657ecd7f9f9bd6a1719fc808639cd4b780674a (patch) | |
tree | fe635b60249497b071f59b07720f97f714a60715 | |
parent | 1e1954f53386cb773e2a152748dd31c4d36aa2d8 (diff) |
journalctl: add option to forgo ellipsization
Sometimes it is better to see messages in full, and the existing
set of options didn't allow this easily. E.g. now
journalctl -f --full
will behave like
tail -f /var/log/messages
of yore.
Long option only for now, since small letters are becoming
scarce, and this doesn't feel like a capital-letter-option.
'-u' would be nice, and the above command would be spelled
journalctl -fu
-rw-r--r-- | man/journalctl.xml | 7 | ||||
-rw-r--r-- | shell-completion/systemd-bash-completion.sh | 3 | ||||
-rw-r--r-- | shell-completion/systemd-zsh-completion.zsh | 1 | ||||
-rw-r--r-- | src/journal/journalctl.c | 10 |
4 files changed, 19 insertions, 2 deletions
diff --git a/man/journalctl.xml b/man/journalctl.xml index 8b26cd9260..471c9452ca 100644 --- a/man/journalctl.xml +++ b/man/journalctl.xml @@ -136,6 +136,13 @@ </varlistentry> <varlistentry> + <term><option>--full</option></term> + + <listitem><para>Show all (printable) fields in + full.</para></listitem> + </varlistentry> + + <varlistentry> <term><option>--all</option></term> <term><option>-a</option></term> diff --git a/shell-completion/systemd-bash-completion.sh b/shell-completion/systemd-bash-completion.sh index 2d425c0aab..c1b851c24e 100644 --- a/shell-completion/systemd-bash-completion.sh +++ b/shell-completion/systemd-bash-completion.sh @@ -294,7 +294,8 @@ __journal_fields=(MESSAGE{,_ID} PRIORITY CODE_{FILE,LINE,FUNC} _journalctl() { local field_vals= cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} local -A OPTS=( - [STANDALONE]='-a --all -b --this-boot --disk-usage -f --follow --header + [STANDALONE]='-a --all --full + -b --this-boot --disk-usage -f --follow --header -h --help -l --local --new-id128 -m --merge --no-pager --no-tail -q --quiet --setup-keys --this-boot --verify --version --list-catalog --update-catalog' diff --git a/shell-completion/systemd-zsh-completion.zsh b/shell-completion/systemd-zsh-completion.zsh index 5f75bc31b1..7799bf68da 100644 --- a/shell-completion/systemd-zsh-completion.zsh +++ b/shell-completion/systemd-zsh-completion.zsh @@ -77,6 +77,7 @@ _ctls() {-n,--lines=}'[Number of journal entries to show]:integer' \ '--no-tail[Show all lines, even in follow mode]' \ {-o,--output=}'[Change journal output mode]:output modes:_outputmodes' \ + {--full}'[Show long fields in full]' \ {-a,--all}'[Show all fields, including long and unprintable]' \ {-q,--quiet}"[Don't show privilege warning]" \ '--no-pager[Do not pipe output into a pager]' \ diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index 8f452dd92d..4d46beb3fe 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -57,6 +57,7 @@ static OutputMode arg_output = OUTPUT_SHORT; static bool arg_follow = false; +static bool arg_full = false; static bool arg_all = false; static bool arg_no_pager = false; static unsigned arg_lines = 0; @@ -105,6 +106,7 @@ static int help(void) { " -o --output=STRING Change journal output mode (short, short-monotonic,\n" " verbose, export, json, json-pretty, json-sse, cat)\n" " -x --catalog Add message explanations where available\n" + " --full Do not ellipsize fields\n" " -a --all Show all fields, including long and unprintable\n" " -q --quiet Don't show privilege warning\n" " --no-pager Do not pipe output into a pager\n" @@ -140,6 +142,7 @@ static int parse_argv(int argc, char *argv[]) { ARG_NO_TAIL, ARG_NEW_ID128, ARG_HEADER, + ARG_FULL, ARG_SETUP_KEYS, ARG_INTERVAL, ARG_VERIFY, @@ -158,6 +161,7 @@ static int parse_argv(int argc, char *argv[]) { { "follow", no_argument, NULL, 'f' }, { "output", required_argument, NULL, 'o' }, { "all", no_argument, NULL, 'a' }, + { "full", no_argument, NULL, ARG_FULL }, { "lines", optional_argument, NULL, 'n' }, { "no-tail", no_argument, NULL, ARG_NO_TAIL }, { "new-id128", no_argument, NULL, ARG_NEW_ID128 }, @@ -226,6 +230,10 @@ static int parse_argv(int argc, char *argv[]) { break; + case ARG_FULL: + arg_full = true; + break; + case 'a': arg_all = true; break; @@ -1065,7 +1073,7 @@ int main(int argc, char *argv[]) { flags = arg_all * OUTPUT_SHOW_ALL | - (!on_tty() || pager_have()) * OUTPUT_FULL_WIDTH | + (arg_full || !on_tty() || pager_have()) * OUTPUT_FULL_WIDTH | on_tty() * OUTPUT_COLOR | arg_catalog * OUTPUT_CATALOG; |