| 110 | }; |
| 111 | |
| 112 | void |
| 113 | usage (int status) |
| 114 | { |
| 115 | if (status != EXIT_SUCCESS) |
| 116 | emit_try_help (); |
| 117 | else |
| 118 | { |
| 119 | printf (_("\ |
| 120 | Usage: %s [OPTION]... [FILE]...\n\ |
| 121 | "), |
| 122 | program_name); |
| 123 | fputs (_("\ |
| 124 | Write each FILE to standard output, last line first.\n\ |
| 125 | "), stdout); |
| 126 | |
| 127 | emit_stdin_note (); |
| 128 | emit_mandatory_arg_note (); |
| 129 | |
| 130 | oputs (_("\ |
| 131 | -b, --before attach the separator before instead of after\n\ |
| 132 | ")); |
| 133 | oputs (_("\ |
| 134 | -r, --regex interpret the separator as a regular expression\n\ |
| 135 | ")); |
| 136 | oputs (_("\ |
| 137 | -s, --separator=STRING use STRING as the separator instead of newline\n\ |
| 138 | ")); |
| 139 | oputs (HELP_OPTION_DESCRIPTION); |
| 140 | oputs (VERSION_OPTION_DESCRIPTION); |
| 141 | fputs (_("\n\ |
| 142 | Non-seekable input is buffered to $TMPDIR, defaulting to /tmp.\n\ |
| 143 | "), stdout); |
| 144 | emit_ancillary_info (PROGRAM_NAME); |
| 145 | } |
| 146 | exit (status); |
| 147 | } |
| 148 | |
| 149 | /* Print the characters from START to PAST_END - 1. |
| 150 | If START is null, just flush the buffer. */ |
no test coverage detected