<listitem><para>Controls the number of
journal lines to show, counting from
- the most recent ones. Takes a positive
- integer argument. In follow mode
- defaults to 10, otherwise is unset
- thus not limiting how many lines are
- shown.</para></listitem>
+ the most recent ones. The argument is
+ optional, and if specified is a
+ positive integer. If not specified and
+ in follow mode defaults to 10. If this
+ option is not passed and follow mode
+ is not enabled, how many lines are
+ shown is not
+ limited.</para></listitem>
</varlistentry>
<varlistentry>
" --no-pager Do not pipe output into a pager\n"
" -a --all Show all fields, including long and unprintable\n"
" -f --follow Follow journal\n"
- " -n --lines=INTEGER Journal entries to show\n"
+ " -n --lines[=INTEGER] Number of journal entries to show\n"
" --no-tail Show all lines, even in follow mode\n"
" -o --output=STRING Change journal output mode (short, short-monotonic,\n"
" verbose, export, json, json-pretty, cat)\n"
{ "follow", no_argument, NULL, 'f' },
{ "output", required_argument, NULL, 'o' },
{ "all", no_argument, NULL, 'a' },
- { "lines", required_argument, NULL, 'n' },
+ { "lines", optional_argument, NULL, 'n' },
{ "no-tail", no_argument, NULL, ARG_NO_TAIL },
{ "new-id128", no_argument, NULL, ARG_NEW_ID128 },
{ "quiet", no_argument, NULL, 'q' },
assert(argc >= 0);
assert(argv);
- while ((c = getopt_long(argc, argv, "hfo:an:qmbD:p:", options, NULL)) >= 0) {
+ while ((c = getopt_long(argc, argv, "hfo:an::qmbD:p:", options, NULL)) >= 0) {
switch (c) {
break;
case 'o':
- arg_output = output_mode_from_string(optarg);
+ arg_output = output_mode_from_string(optarg);
if (arg_output < 0) {
log_error("Unknown output '%s'.", optarg);
return -EINVAL;
break;
case 'n':
- r = safe_atoi(optarg, &arg_lines);
- if (r < 0 || arg_lines < 0) {
- log_error("Failed to parse lines '%s'", optarg);
- return -EINVAL;
- }
+ if (optarg) {
+ r = safe_atoi(optarg, &arg_lines);
+ if (r < 0 || arg_lines < 0) {
+ log_error("Failed to parse lines '%s'", optarg);
+ return -EINVAL;
+ }
+ } else
+ arg_lines = 10;
+
break;
case ARG_NO_TAIL: