static int search(const int *c, int k, int y, const struct cand *list)
{
+ int i, j;
+
if (list[c[k]].y < y) /* quick look for typical case */
return k + 1;
- for (int i = 0, j = k + 1;;) {
+ for (i = 0, j = k + 1;;) {
const int l = (i + j) >> 1;
if (l > i) {
const int t = list[c[l]].y;
int clistlen = 100;
int k = 0;
struct cand *clist = xzalloc(clistlen * sizeof(clist[0]));
+ struct cand cand;
+ struct cand *q;
int *klist = xzalloc((n + 2) * sizeof(klist[0]));
/*clist[0] = (struct cand){0}; - xzalloc did it */
/*klist[0] = 0; */
- for (struct cand cand = {1}; cand.x <= n; cand.x++) {
+ for (cand.x = 1; cand.x <= n; cand.x++) {
int j = a[cand.x], oldl = 0;
unsigned numtries = 0;
if (j == 0)
} while ((cand.y = b[++j]) > 0 && numtries < bound);
}
/* Unravel */
- for (struct cand *q = clist + klist[k]; q->y; q = clist + q->pred)
+ for (q = clist + klist[k]; q->y; q = clist + q->pred)
J[q->x + pref] = q->y + pref;
free(klist);
free(clist);
static void unsort(const struct line *f, int l, int *b)
{
+ int i;
int *a = xmalloc((l + 1) * sizeof(a[0]));
- for (int i = 1; i <= l; i++)
+ for (i = 1; i <= l; i++)
a[f[i].serial] = f[i].value;
- for (int i = 1; i <= l; i++)
+ for (i = 1; i <= l; i++)
b[i] = a[i];
free(a);
}
static void fetch(FILE_and_pos_t *ft, const off_t *ix, int a, int b, int ch)
{
- for (int i = a; i <= b; i++) {
+ int i, j, col;
+ for (i = a; i <= b; i++) {
seek_ft(ft, ix[i - 1]);
putchar(ch);
if (option_mask32 & FLAG(T))
putchar('\t');
- for (int j = 0, col = 0; j < ix[i] - ix[i - 1]; j++) {
+ for (j = 0, col = 0; j < ix[i] - ix[i - 1]; j++) {
int c = fgetc(ft->ft_fp);
if (c == EOF) {
printf("\n\\ No newline at end of file\n");
{
int *J, slen[2], *class, *member;
struct line *nfile[2], *sfile[2];
- int pref = 0, suff = 0;
+ int pref = 0, suff = 0, i, j, delta;
/* Lines of both files are hashed, and in the process
* their offsets are stored in the array ix[fileno]
* where fileno == 0 points to the old file, and
* fileno == 1 points to the new one.
*/
- for (int i = 0; i < 2; i++) {
+ for (i = 0; i < 2; i++) {
unsigned hash;
token_t tok;
size_t sz = 100;
nfile[i] = xmalloc((sz + 3) * sizeof(nfile[i][0]));
/* ft gets here without the correct position, cant use seek_ft */
+ ft[i].ft_pos = 0;
fseeko(ft[i].ft_fp, 0, SEEK_SET);
nlen[i] = 0;
nlen[i]--;
/* Now we copy the line offsets into ix */
ix[i] = xmalloc((nlen[i] + 2) * sizeof(ix[i][0]));
- for (int j = 0; j < nlen[i] + 1; j++)
+ for (j = 0; j < nlen[i] + 1; j++)
ix[i][j] = nfile[i][j].offset;
}
- /* lenght of prefix and suffix is calculated */
+ /* length of prefix and suffix is calculated */
for (; pref < nlen[0] && pref < nlen[1] &&
nfile[0][pref + 1].value == nfile[1][pref + 1].value;
pref++);
* the result being sorted and stored in sfile[fileno],
* and their sizes are stored in slen[fileno]
*/
- for (int j = 0; j < 2; j++) {
+ for (j = 0; j < 2; j++) {
sfile[j] = nfile[j] + pref;
slen[j] = nlen[j] - pref - suff;
- for (int i = 0; i <= slen[j]; i++)
+ for (i = 0; i <= slen[j]; i++)
sfile[j][i].serial = i;
qsort(sfile[j] + 1, slen[j], sizeof(*sfile[j]), line_compar);
}
free(nfile[1]);
class = xmalloc((slen[0] + 1) * sizeof(class[0]));
- for (int i = 1; i <= slen[0]; i++) /* Unsorting */
+ for (i = 1; i <= slen[0]; i++) /* Unsorting */
class[sfile[0][i].serial] = sfile[0][i].value;
free(nfile[0]);
#else
* are initialized with 0 (no matches), so that function stone can
* then assign them their right values
*/
- for (int i = 0, delta = nlen[1] - nlen[0]; i <= nlen[0]; i++)
+ for (i = 0, delta = nlen[1] - nlen[0]; i <= nlen[0]; i++)
J[i] = i <= pref ? i :
i > (nlen[0] - suff) ? (i + delta) : 0;
/* Here the magic is performed */
* which, due to limitations intrinsic to any hashing algorithm,
* are different but ended up confounded as the same
*/
- for (int i = 1; i <= nlen[0]; i++) {
+ for (i = 1; i <= nlen[0]; i++) {
if (!J[i])
continue;
seek_ft(&ft[0], ix[0][i - 1]);
seek_ft(&ft[1], ix[1][J[i] - 1]);
- for (int j = J[i]; i <= nlen[0] && J[i] == j; i++, j++) {
+ for (j = J[i]; i <= nlen[0] && J[i] == j; i++, j++) {
token_t tok0 = 0, tok1 = 0;
do {
tok0 = read_token(&ft[0], tok0);
{
int nlen[2];
off_t *ix[2];
- FILE_and_pos_t ft[2] = { { fp[0] }, { fp[1] } };
- int *J = create_J(ft, nlen, ix);
-
- bool anychange = false;
+ FILE_and_pos_t ft[2];
typedef struct { int a, b; } vec_t[2];
vec_t *vec = NULL;
- int i = 1, idx = -1;
+ int i = 1, j, k, idx = -1;
+ bool anychange = false;
+ int *J;
+
+ ft[0].ft_fp = fp[0];
+ ft[1].ft_fp = fp[1];
+ /* note that ft[i].ft_pos is unintitalized, create_J()
+ * must not assume otherwise */
+ J = create_J(ft, nlen, ix);
do {
bool nonempty = false;
break;
}
- for (int j = 0; j < 2; j++)
- for (int k = v[j].a; k < v[j].b; k++)
+ for (j = 0; j < 2; j++)
+ for (k = v[j].a; k < v[j].b; k++)
nonempty |= (ix[j][k+1] - ix[j][k] != 1);
vec = xrealloc_vector(vec, 6, ++idx);
if (idx < 0 || ((option_mask32 & FLAG(B)) && !nonempty))
goto cont;
if (!(option_mask32 & FLAG(q))) {
+ int lowa;
vec_t span, *cvp = vec;
if (!anychange) {
}
printf("@@");
- for (int j = 0; j < 2; j++) {
+ for (j = 0; j < 2; j++) {
int a = span[j].a = MAX(1, (*cvp)[j].a - opt_U_context);
int b = span[j].b = MIN(nlen[j], vec[idx][j].b + opt_U_context);
* Output changes in "unified" diff format--the old and new lines
* are printed together.
*/
- for (int lowa = span[0].a; ; lowa = (*cvp++)[0].b + 1) {
+ for (lowa = span[0].a; ; lowa = (*cvp++)[0].b + 1) {
bool end = cvp > &vec[idx];
fetch(&ft[0], ix[0], lowa, end ? span[0].b : (*cvp)[0].a - 1, ' ');
if (end)
break;
- for (int j = 0; j < 2; j++)
+ for (j = 0; j < 2; j++)
fetch(&ft[j], ix[j], (*cvp)[j].a, (*cvp)[j].b, j ? '+' : '-');
}
}
{
FILE *fp[2] = { stdin, stdin };
bool binary = false, differ = false;
- int status = STATUS_SAME;
+ int status = STATUS_SAME, i;
- for (int i = 0; i < 2; i++) {
+ for (i = 0; i < 2; i++) {
int fd = open_or_warn_stdin(file[i]);
if (fd == -1)
goto out;
const size_t sz = COMMON_BUFSIZE / 2;
char *const buf0 = bb_common_bufsiz1;
char *const buf1 = buf0 + sz;
- int i, j;
+ int j, k;
i = fread(buf0, 1, sz, fp[0]);
j = fread(buf1, 1, sz, fp[1]);
if (i != j) {
}
if (i == 0)
break;
- for (int k = 0; k < i; k++) {
+ for (k = 0; k < i; k++) {
if (!buf0[k] || !buf1[k])
binary = true;
if (buf0[k] != buf1[k])
static void diffdir(char *p[2], const char *s_start)
{
struct dlist list[2];
+ int i;
memset(&list, 0, sizeof(list));
- for (int i = 0; i < 2; i++) {
+ for (i = 0; i < 2; i++) {
/*list[i].s = list[i].e = 0; - memset did it */
/*list[i].dl = NULL; */
else {
char *fullpath[2], *path[2]; /* if -N */
- for (int i = 0; i < 2; i++) {
+ for (i = 0; i < 2; i++) {
if (pos == 0 || i == k) {
path[i] = fullpath[i] = concat_path_file(p[i], dp[i]);
stat(fullpath[i], &stb[i]);
int diff_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int diff_main(int argc UNUSED_PARAM, char **argv)
{
- int gotstdin = 0;
+ int gotstdin = 0, i;
char *file[2], *s_start = NULL;
llist_t *L_arg = NULL;
while (L_arg)
label[!!label[0]] = llist_pop(&L_arg);
xfunc_error_retval = 2;
- for (int i = 0; i < 2; i++) {
+ for (i = 0; i < 2; i++) {
file[i] = argv[i];
/* Compat: "diff file name_which_doesnt_exist" exits with 2 */
if (LONE_DASH(file[i])) {
#define NOUSAGE_STR "\b"
#define acpid_trivial_usage \
- "[-d] [-c CONFDIR] [-l LOGFILE] [-e PROC_EVENT_FILE] [EVDEV_EVENT_FILE...]"
+ "[-d] [-c CONFDIR] [-l LOGFILE] [-e PROC_EVENT_FILE] [EVDEV_EVENT_FILE]..."
#define acpid_full_usage "\n\n" \
"Listen to ACPI events and spawn specific helpers on event arrival\n" \
"\nOptions:" \
"# acpid -d /dev/input/event*\n"
#define addgroup_trivial_usage \
- "[-g GID] " IF_FEATURE_ADDUSER_TO_GROUP("[user_name] ") "group_name"
+ "[-g GID] " IF_FEATURE_ADDUSER_TO_GROUP("[USER] ") "GROUP"
#define addgroup_full_usage "\n\n" \
"Add a group " IF_FEATURE_ADDUSER_TO_GROUP("or add a user to a group") "\n" \
"\nOptions:" \
"\n -S Create a system group" \
#define adduser_trivial_usage \
- "[OPTIONS] user_name"
+ "[OPTIONS] USER"
#define adduser_full_usage "\n\n" \
"Add a user\n" \
"\nOptions:" \
"\n -u UID User id" \
#define adjtimex_trivial_usage \
- "[-q] [-o offset] [-f frequency] [-p timeconstant] [-t tick]"
+ "[-q] [-o OFF] [-f FREQ] [-p TCONST] [-t TICK]"
#define adjtimex_full_usage "\n\n" \
- "Read and optionally set system timebase parameters. See adjtimex(2).\n" \
+ "Read and optionally set system timebase parameters. See adjtimex(2)\n" \
"\nOptions:" \
- "\n -q Quiet" \
- "\n -o offset Time offset, microseconds" \
- "\n -f frequency Frequency adjust, integer kernel units (65536 is 1ppm)" \
- "\n (positive values make clock run faster)" \
- "\n -t tick Microseconds per tick, usually 10000" \
- "\n -p timeconstant" \
+ "\n -q Quiet" \
+ "\n -o OFF Time offset, microseconds" \
+ "\n -f FREQ Frequency adjust, integer kernel units (65536 is 1ppm)" \
+ "\n (positive values make clock run faster)" \
+ "\n -t TICK Microseconds per tick, usually 10000" \
+ "\n -p TCONST" \
#define ar_trivial_usage \
"[-o] [-v] [-p] [-t] [-x] ARCHIVE FILES"
"\n -v Verbose" \
#define arp_trivial_usage \
- "\n[-vn] [-H type] [-i if] -a [hostname]" \
- "\n[-v] [-i if] -d hostname [pub]" \
- "\n[-v] [-H type] [-i if] -s hostname hw_addr [temp]" \
- "\n[-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub" \
- "\n[-v] [-H type] [-i if] -Ds hostname ifa [netmask nm] pub"
+ "\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]" \
+ "\n[-v] [-i IF] -d HOSTNAME [pub]" \
+ "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]" \
+ "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub" \
+ "\n[-v] [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub"
#define arp_full_usage "\n\n" \
"Manipulate ARP cache\n" \
"\nOptions:" \
"\n -H HWTYPE Hardware address type" \
#define arping_trivial_usage \
- "[-fqbDUA] [-c count] [-w timeout] [-I dev] [-s sender] target"
+ "[-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP"
#define arping_full_usage "\n\n" \
"Send ARP requests/replies\n" \
"\nOptions:" \
"\n -U Unsolicited ARP mode, update your neighbors" \
"\n -A ARP answer mode, update your neighbors" \
"\n -c N Stop after sending N ARP requests" \
- "\n -w timeout Time to wait for ARP reply, in seconds" \
- "\n -I dev Interface to use (default eth0)" \
- "\n -s sender Sender IP address" \
- "\n target Target IP address" \
+ "\n -w TIMEOUT Time to wait for ARP reply, seconds" \
+ "\n -I IFACE Interface to use (default eth0)" \
+ "\n -s SRC_IP Sender IP address" \
+ "\n DST_IP Target IP address" \
#define sh_trivial_usage NOUSAGE_STR
#define sh_full_usage ""
) \
#define bunzip2_trivial_usage \
- "[OPTIONS] [FILE]"
+ "[OPTIONS] [FILE]..."
#define bunzip2_full_usage "\n\n" \
- "Uncompress FILE (or standard input)\n" \
+ "Uncompress FILEs (or stdin)\n" \
"\nOptions:" \
- "\n -c Write to standard output" \
+ "\n -c Write to stdout" \
"\n -f Force" \
#define bzip2_trivial_usage \
"[OPTIONS] [FILE]..."
#define bzip2_full_usage "\n\n" \
- "Compress FILEs (or standard input) with bzip2 algorithm.\n" \
+ "Compress FILEs (or stdin) with bzip2 algorithm\n" \
"\nOptions:" \
- "\n -c Write to standard output" \
+ "\n -c Write to stdout" \
"\n -d Decompress" \
"\n -f Force" \
"\n -1..-9 Compression level" \
#define lzop_trivial_usage \
"[-cfvd123456789CF] [FILE]..."
#define lzop_full_usage "\n\n" \
- " -c Write to standard output" \
+ " -c Write to stdout" \
"\n -f Force" \
"\n -v Verbose" \
"\n -d Decompress" \
#define unlzop_trivial_usage \
"[-cfvCF] [FILE]..."
#define unlzop_full_usage "\n\n" \
- " -c Write to standard output" \
+ " -c Write to stdout" \
"\n -f Force" \
"\n -v Verbose" \
"\n -F Don't store or verify checksum" \
"Uncompress to stdout"
#define unlzma_trivial_usage \
- "[OPTIONS] [FILE]"
+ "[OPTIONS] [FILE]..."
#define unlzma_full_usage "\n\n" \
- "Uncompress FILE (or standard input)\n" \
+ "Uncompress FILE (or stdin)\n" \
"\nOptions:" \
- "\n -c Write to standard output" \
+ "\n -c Write to stdout" \
"\n -f Force" \
#define lzmacat_trivial_usage \
"Uncompress to stdout"
#define cal_trivial_usage \
- "[-jy] [[month] year]"
+ "[-jy] [[MONTH] YEAR]"
#define cal_full_usage "\n\n" \
"Display a calendar\n" \
"\nOptions:" \
"\n -c BYTES Limit core file size" \
"\n -v Verbose" \
"\n -P Create new process group" \
- "\n -0 Close standard input" \
- "\n -1 Close standard output" \
- "\n -2 Close standard error" \
+ "\n -0 Close stdin" \
+ "\n -1 Close stdout" \
+ "\n -2 Close stderr" \
#define setuidgid_trivial_usage \
- "account prog args"
+ "USER PROG ARGS"
#define setuidgid_full_usage "\n\n" \
- "Set uid and gid to account's uid and gid, removing all supplementary\n" \
+ "Set uid and gid to USER's uid and gid, removing all supplementary\n" \
"groups and run PROG"
#define envuidgid_trivial_usage \
- "account prog args"
+ "USER PROG ARGS"
#define envuidgid_full_usage "\n\n" \
- "Set $UID to account's uid and $GID to account's gid and run PROG"
+ "Set $UID to USER's uid and $GID to USER's gid and run PROG"
#define envdir_trivial_usage \
- "dir prog args"
+ "DIR PROG ARGS"
#define envdir_full_usage "\n\n" \
"Set various environment variables as specified by files\n" \
"in the directory dir and run PROG"
"\n a SIGXCPU after N seconds" \
#define chroot_trivial_usage \
- "NEWROOT [PROG [ARGS]]"
+ "NEWROOT [PROG ARGS]"
#define chroot_full_usage "\n\n" \
"Run PROG with root directory set to NEWROOT"
#define chroot_example_usage \
"Print the config file which built busybox"
#define chrt_trivial_usage \
- "[OPTIONS] [PRIO] [PID | PROG [ARGS]]"
+ "[OPTIONS] [PRIO] [PID | PROG ARGS]"
#define chrt_full_usage "\n\n" \
"Manipulate real-time attributes of a process\n" \
"\nOptions:" \
"Extract or list files from a cpio archive" \
IF_FEATURE_CPIO_O(", or" \
"\ncreate an archive" IF_FEATURE_CPIO_P(" (-o) or copy files (-p)") \
- " using file list on standard input" \
+ " using file list on stdin" \
) \
"\n" \
"\nMain operation mode:" \
#define cut_trivial_usage \
"[OPTIONS] [FILE]..."
#define cut_full_usage "\n\n" \
- "Print selected fields from each input FILE to standard output\n" \
+ "Print selected fields from each input FILE to stdout\n" \
"\nOptions:" \
"\n -b LIST Output only bytes from LIST" \
"\n -c LIST Output only characters from LIST" \
"p - print top of the stack (without altering the stack),\n" \
"f - print entire stack, o - pop the value and set output radix\n" \
"(value must be 10 or 16).\n" \
- "Examples: 'dc 2 2 add' -> 4, 'dc 8 8 * 2 2 + /' -> 16.\n" \
+ "Examples: 'dc 2 2 add' -> 4, 'dc 8 8 * 2 2 + /' -> 16\n" \
#define dc_example_usage \
"$ dc 2 2 + p\n" \
"[-Pk" \
IF_FEATURE_HUMAN_READABLE("mh") \
IF_FEATURE_DF_FANCY("ai] [-B SIZE") \
- "] [FILESYSTEM...]"
+ "] [FILESYSTEM]..."
#define df_full_usage "\n\n" \
"Print filesystem usage statistics\n" \
"\nOptions:" \
"/dev/sda3 17381728 17107080 274648 98% /\n"
#define dhcprelay_trivial_usage \
- "CLIENT_IFACE[,CLIENT_IFACE2...] SERVER_IFACE [SERVER_IP]"
+ "CLIENT_IFACE[,CLIENT_IFACE2]... SERVER_IFACE [SERVER_IP]"
#define dhcprelay_full_usage "\n\n" \
"Relay DHCP requests between clients and server" \
"\n -s SIZE Buffer size" \
#define dnsd_trivial_usage \
- "[-c config] [-t seconds] [-p port] [-i iface-ip] [-d]"
+ "[-dvs] [-c CONFFILE] [-t TTL_SEC] [-p PORT] [-i ADDR]"
#define dnsd_full_usage "\n\n" \
"Small static DNS server daemon\n" \
"\nOptions:" \
- "\n -c Config filename" \
- "\n -t TTL in seconds" \
- "\n -p Listening port" \
- "\n -i Listening ip (default all)" \
+ "\n -c FILE Config file" \
+ "\n -t SEC TTL" \
+ "\n -p PORT Listen on PORT" \
+ "\n -i ADDR Listen on ADDR" \
"\n -d Daemonize" \
+ "\n -v Verbose" \
+ "\n -s Send successful replies only. Use this if you want" \
+ "\n to use /etc/resolv.conf with two nameserver lines:" \
+ "\n nameserver DNSD_SERVER" \
+ "\n nameserver NORNAL_DNS_SERVER" \
#define dos2unix_trivial_usage \
"[OPTIONS] [FILE]"
"\n -d unix2dos" \
#define dpkg_trivial_usage \
- "[-ilCPru] [-F option] package_name"
+ "[-ilCPru] [-F OPT] PACKAGE"
#define dpkg_full_usage "\n\n" \
"Install, remove and manage Debian packages\n" \
"\nOptions:" \
#define dumpkmap_trivial_usage \
"> keymap"
#define dumpkmap_full_usage "\n\n" \
- "Print a binary keyboard translation table to standard output"
+ "Print a binary keyboard translation table to stdout"
#define dumpkmap_example_usage \
"$ dumpkmap > keymap\n"
*/
#define echo_trivial_usage \
- IF_FEATURE_FANCY_ECHO("[-neE] ") "[ARG...]"
+ IF_FEATURE_FANCY_ECHO("[-neE] ") "[ARG]..."
#define echo_full_usage "\n\n" \
"Print the specified ARGs to stdout" \
IF_FEATURE_FANCY_ECHO( "\n" \
#define eject_trivial_usage \
"[-t] [-T] [DEVICE]"
#define eject_full_usage "\n\n" \
- "Eject specified DEVICE (or default /dev/cdrom)\n" \
+ "Eject DEVICE or default /dev/cdrom\n" \
"\nOptions:" \
IF_FEATURE_EJECT_SCSI( \
"\n -s SCSI device" \
#define ed_full_usage ""
#define env_trivial_usage \
- "[-iu] [-] [name=value]... [PROG [ARGS]]"
+ "[-iu] [-] [name=value]... [PROG ARGS]"
#define env_full_usage "\n\n" \
"Print the current environment or run PROG after setting up\n" \
"the specified environment\n" \
#define expand_trivial_usage \
"[-i] [-t N] [FILE|-]"
#define expand_full_usage "\n\n" \
- "Convert tabs to spaces, writing to standard output\n" \
+ "Convert tabs to spaces, writing to stdout\n" \
"\nOptions:" \
IF_FEATURE_EXPAND_LONG_OPTIONS( \
"\n -i,--initial Don't convert tabs after non blanks" \
#define expr_trivial_usage \
"EXPRESSION"
#define expr_full_usage "\n\n" \
- "Print the value of EXPRESSION to standard output\n" \
+ "Print the value of EXPRESSION to stdout\n" \
"\n" \
"EXPRESSION may be:\n" \
" ARG1 | ARG2 ARG1 if it is neither null nor 0, otherwise ARG2\n" \
"$ findfs LABEL=MyDevice"
#define find_trivial_usage \
- "[PATH...] [EXPRESSION]"
+ "[PATH]... [EXPRESSION]"
#define find_full_usage "\n\n" \
"Search for files. The default PATH is the current directory,\n" \
"default EXPRESSION is '-print'\n" \
IF_FEATURE_FIND_DEPTH( \
"\n -depth Process directory name after traversing it") \
IF_FEATURE_FIND_SIZE( \
- "\n -size N[bck] File size is N (c:bytes,k:kbytes,b:512 bytes(def.))." \
+ "\n -size N[bck] File size is N (c:bytes,k:kbytes,b:512 bytes(def.))" \
"\n +/-N: file size is bigger/smaller than N") \
IF_FEATURE_FIND_LINKS( \
"\n -links N Number of links is greater than (+N), less than (-N)," \
"\n -v Verbose" \
#define fold_trivial_usage \
- "[-bs] [-w WIDTH] [FILE]"
+ "[-bs] [-w WIDTH] [FILE]..."
#define fold_full_usage "\n\n" \
- "Wrap input lines in each FILE (standard input by default), writing to\n" \
- "standard output\n" \
+ "Wrap input lines in each FILE (or stdin), writing to stdout\n" \
"\nOptions:" \
"\n -b Count bytes rather than columns" \
"\n -s Break at spaces" \
"$ freeramdisk /dev/ram2\n"
#define fsck_trivial_usage \
- "[-ANPRTV] [-C fd] [-t fstype] [fs-options] [filesys...]"
+ "[-ANPRTV] [-C FD] [-t FSTYPE] [FS_OPTS] [BLOCKDEV]..."
#define fsck_full_usage "\n\n" \
"Check and repair filesystems\n" \
"\nOptions:" \
"\n -T Don't show title on startup" \
"\n -V Verbose" \
"\n -C n Write status information to specified filedescriptor" \
- "\n -t type List of filesystem types to check" \
+ "\n -t TYPE List of filesystem types to check" \
#define fsck_minix_trivial_usage \
- "[-larvsmf] /dev/name"
+ "[-larvsmf] BLOCKDEV"
#define fsck_minix_full_usage "\n\n" \
"Check MINIX filesystem\n" \
"\nOptions:" \
"#!/bin/sh\n" \
"GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \\\n" \
" -n 'example.busybox' -- \"$@\"`\n" \
- "if [ $? != 0 ]; then exit 1; fi\n" \
+ "if [ $? != 0 ]; then exit 1; fi\n" \
"eval set -- \"$GETOPT\"\n" \
"while true; do\n" \
" case $1 in\n" \
"\n -H HOST Log HOST into the utmp file as the hostname" \
#define grep_trivial_usage \
- "[-HhrilLnqvso" \
+ "[-HhnlLoqvsri" \
IF_DESKTOP("w") \
- "eF" \
+ "F" \
IF_FEATURE_GREP_EGREP_ALIAS("E") \
- IF_FEATURE_GREP_CONTEXT("ABC") \
IF_EXTRA_COMPAT("z") \
- "] PATTERN [FILE]..."
+ "] [-m N] " \
+ IF_FEATURE_GREP_CONTEXT("[-A/B/C N] ") \
+ "PATTERN/-e PATTERN.../-f FILE [FILE]..."
#define grep_full_usage "\n\n" \
- "Search for PATTERN in each FILE or standard input\n" \
- "\nOptions:" \
- "\n -H Prefix output lines with filename where match was found" \
- "\n -h Suppress the prefixing filename on output" \
- "\n -r Recurse" \
- "\n -i Ignore case distinctions" \
- "\n -l List names of files that match" \
- "\n -L List names of files that don't match" \
- "\n -n Print line number with output lines" \
+ "Search for PATTERN in FILEs (or stdin)\n" \
+ "\nOptions:" \
+ "\n -H Add 'filename:' prefix" \
+ "\n -h Do not add 'filename:' prefix" \
+ "\n -n Add 'line_no:' prefix" \
+ "\n -l Show only names of files that match" \
+ "\n -L Show only names of files that don't match" \
+ "\n -c Show only count of matching lines" \
+ "\n -o Show only the matching part of line" \
"\n -q Quiet. Return 0 if PATTERN is found, 1 otherwise" \
"\n -v Select non-matching lines" \
- "\n -s Suppress file open/read error messages" \
- "\n -c Only print count of matching lines" \
- "\n -o Show only the part of a line that matches PATTERN" \
- "\n -m N Match up to N times per file" \
+ "\n -s Suppress open and read errors" \
+ "\n -r Recurse" \
+ "\n -i Ignore case" \
IF_DESKTOP( \
- "\n -w Match whole words only") \
- "\n -F PATTERN is a set of newline-separated strings" \
+ "\n -w Match whole words only" \
+ ) \
+ "\n -F PATTERN is a literal (not regexp)" \
IF_FEATURE_GREP_EGREP_ALIAS( \
- "\n -E PATTERN is an extended regular expression") \
- "\n -e PTRN Pattern to match" \
- "\n -f FILE Read pattern from file" \
+ "\n -E PATTERN is an extended regexp" \
+ ) \
+ IF_EXTRA_COMPAT( \
+ "\n -z Input is NUL terminated" \
+ ) \
+ "\n -m N Match up to N times per file" \
IF_FEATURE_GREP_CONTEXT( \
"\n -A N Print N lines of trailing context" \
"\n -B N Print N lines of leading context" \
- "\n -C N Print N lines of output context") \
- IF_EXTRA_COMPAT( \
- "\n -z Input is NUL terminated") \
+ "\n -C N Same as '-A N -B N'" \
+ ) \
+ "\n -e PTRN Pattern to match" \
+ "\n -f FILE Read pattern from file" \
#define grep_example_usage \
"$ grep root /etc/passwd\n" \
#define gunzip_trivial_usage \
"[OPTIONS] [FILE]..."
#define gunzip_full_usage "\n\n" \
- "Uncompress FILEs (or standard input)\n" \
+ "Uncompress FILEs (or stdin)\n" \
"\nOptions:" \
- "\n -c Write to standard output" \
+ "\n -c Write to stdout" \
"\n -f Force" \
"\n -t Test file integrity" \
#define gzip_trivial_usage \
"[OPTIONS] [FILE]..."
#define gzip_full_usage "\n\n" \
- "Compress FILEs (or standard input)\n" \
+ "Compress FILEs (or stdin)\n" \
"\nOptions:" \
- "\n -c Write to standard output" \
+ "\n -c Write to stdout" \
"\n -d Decompress" \
"\n -f Force" \
#define head_trivial_usage \
"[OPTIONS] [FILE]..."
#define head_full_usage "\n\n" \
- "Print first 10 lines of each FILE (or standard input) to standard output.\n" \
+ "Print first 10 lines of each FILE (or stdin) to stdout.\n" \
"With more than one FILE, precede each with a header giving the file name.\n" \
"\nOptions:" \
"\n -n N Print first N lines instead of first 10" \
"daemon:x:1:1:daemon:/usr/sbin:/bin/sh\n"
#define hexdump_trivial_usage \
- "[-bcCdefnosvx" IF_FEATURE_HEXDUMP_REVERSE("R") "] FILE..."
+ "[-bcCdefnosvx" IF_FEATURE_HEXDUMP_REVERSE("R") "] [FILE]..."
#define hexdump_full_usage "\n\n" \
- "Display FILEs or standard input in a user specified format\n" \
+ "Display FILEs (or stdin) in a user specified format\n" \
"\nOptions:" \
"\n -b One-byte octal display" \
"\n -c One-byte character display" \
" [up|down] ..."
#define ifenslave_trivial_usage \
- "[-cdf] master-iface <slave-iface...>"
+ "[-cdf] MASTER_IFACE SLAVE_IFACE..."
#define ifenslave_full_usage "\n\n" \
"Configure network interfaces for parallel routing\n" \
"\nOptions:" \
"\n -k Kill running daemon" \
#define ifup_trivial_usage \
- "[-ain"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] ifaces..."
+ "[-ain"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] IFACE..."
#define ifup_full_usage "\n\n" \
"Options:" \
"\n -a De/configure all interfaces automatically" \
" ::shutdown:/sbin/swapoff -a\n"
#define inotifyd_trivial_usage \
- "PROG FILE1[:MASK] ..."
+ "PROG FILE1[:MASK]..."
#define inotifyd_full_usage "\n\n" \
"Run PROG on filesystem changes." \
"\nWhen a filesystem event matching MASK occurs on FILEn," \
- "\nPROG <actual_event(s)> <FILEn> [<subfile_name>] is run." \
+ "\nPROG ACTUAL_EVENTS FILEn [SUBFILE] is run." \
"\nEvents:" \
"\n a File is accessed" \
"\n c File is modified" \
"\n d Subfile is deleted" \
"\n" \
"\ninotifyd waits for PROG to exit." \
- "\nWhen x event happens for all FILEs, inotifyd exits" \
+ "\nWhen x event happens for all FILEs, inotifyd exits." \
/* 2.6 style insmod has no options and required filename
* (not module name - .ko can't be omitted) */
/* -v, -b, -c are ignored */
#define install_trivial_usage \
- "[-cdDsp] [-o USER] [-g GRP] [-m MODE] [source] dest|directory"
+ "[-cdDsp] [-o USER] [-g GRP] [-m MODE] [SOURCE]... DEST"
#define install_full_usage "\n\n" \
"Copy files and set attributes\n" \
"\nOptions:" \
"$ kill 252\n"
#define killall_trivial_usage \
- "[-l] [-q] [-SIG] process-name..."
+ "[-l] [-q] [-SIG] PROCESS_NAME..."
#define killall_full_usage "\n\n" \
"Send a signal (default: TERM) to given processes\n" \
"\nOptions:" \
#define less_trivial_usage \
"[-EMNmh~I?] [FILE]..."
#define less_full_usage "\n\n" \
- "View a file or list of files. The position within files can be\n" \
- "changed, and files can be manipulated in various ways.\n" \
+ "View FILE (or stdin) one screenful at a time\n" \
"\nOptions:" \
"\n -E Quit once the end of a file is reached" \
"\n -M,-m Display status line with line numbers" \
#define linuxrc_full_usage ""
#define setarch_trivial_usage \
- "personality program [args...]"
+ "personality PROG ARGS"
#define setarch_full_usage "\n\n" \
"Personality may be:\n" \
" linux32 Set 32bit uname emulation\n" \
#define loadfont_trivial_usage \
"< font"
#define loadfont_full_usage "\n\n" \
- "Load a console font from standard input" \
+ "Load a console font from stdin" \
/* "\n -C TTY Affect TTY instead of /dev/tty" */ \
#define loadfont_example_usage \
#define loadkmap_trivial_usage \
"< keymap"
#define loadkmap_full_usage "\n\n" \
- "Load a binary keyboard translation table from standard input\n" \
+ "Load a binary keyboard translation table from stdin\n" \
/* "\n -C TTY Affect TTY instead of /dev/tty" */ \
#define loadkmap_example_usage \
#define logger_trivial_usage \
"[OPTIONS] [MESSAGE]"
#define logger_full_usage "\n\n" \
- "Write MESSAGE to the system log. If MESSAGE is omitted, log stdin.\n" \
+ "Write MESSAGE (or stdin) to syslog\n" \
"\nOptions:" \
"\n -s Log to stderr as well as the system log" \
"\n -t TAG Log using the specified tag (defaults to user name)" \
"\n tcpsvd -E 0 515 softlimit -m 999999 lpd /var/spool ./print" \
#define lpq_trivial_usage \
- "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID...] [-fs]"
+ "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID]... [-fs]"
#define lpq_full_usage "\n\n" \
"Options:" \
"\n -P lp service to connect to (else uses $PRINTER)" \
"[-L LABEL] " \
/* "[-M last-mounted-directory] [-S] [-T filesystem-type] " */ \
"BLOCKDEV [KBYTES]"
-#define mkfs_ext2_full_usage "\n" \
- "\n -b BLK_SIZE Block size, bytes" \
+#define mkfs_ext2_full_usage "\n\n" \
+ " -b BLK_SIZE Block size, bytes" \
/* "\n -c Check device for bad blocks" */ \
/* "\n -E opts Set extended options" */ \
/* "\n -f size Fragment size in bytes" */ \
/* "\n -v Verbose" */ \
#define mkfs_minix_trivial_usage \
- "[-c | -l filename] [-nXX] [-iXX] BLOCKDEV [KBYTES]"
+ "[-c | -l FILE] [-nXX] [-iXX] BLOCKDEV [KBYTES]"
#define mkfs_minix_full_usage "\n\n" \
"Make a MINIX filesystem\n" \
"\nOptions:" \
"\n -c Check device for bad blocks" \
"\n -n [14|30] Maximum length of filenames" \
"\n -i INODES Number of inodes for the filesystem" \
- "\n -l FILENAME Read bad blocks list from FILENAME" \
+ "\n -l FILE Read bad blocks list from FILE" \
"\n -v Make version 2 filesystem" \
#define mkfs_reiser_trivial_usage \
"$ mknod -m 644 /tmp/pipe p\n"
#define mkswap_trivial_usage \
- "[OPTIONS] BLOCKDEV" /* [SIZE_IN_KB] */
+ "[OPTIONS] BLOCKDEV [KBYTES]"
#define mkswap_full_usage "\n\n" \
"Prepare BLOCKDEV to be used as swap partition\n" \
"\nOptions:" \
"-rw------- 1 andersen andersen 0 Apr 25 17:10 /tmp/temp.mWiLjM\n"
#define modprobe_trivial_usage \
- IF_MODPROBE_SMALL("[-qfwrsv] MODULE [symbol=value...]") \
+ IF_MODPROBE_SMALL("[-qfwrsv] MODULE [symbol=value]...") \
IF_NOT_MODPROBE_SMALL("[-" \
IF_FEATURE_2_4_MODULES("k")"nqrsv" \
- IF_FEATURE_MODPROBE_BLACKLIST("b")"] MODULE [symbol=value...]")
+ IF_FEATURE_MODPROBE_BLACKLIST("b")"] MODULE [symbol=value]...")
#define modprobe_full_usage "\n\n" \
"Options:" \
IF_MODPROBE_SMALL( \
#define more_trivial_usage \
"[FILE]..."
#define more_full_usage "\n\n" \
- "View FILE or standard input one screenful at a time"
+ "View FILE (or stdin) one screenful at a time"
#define more_example_usage \
"$ dmesg | more\n"
)
#define nice_trivial_usage \
- "[-n ADJUST] [PROG [ARGS]]"
+ "[-n ADJUST] [PROG ARGS]"
#define nice_full_usage "\n\n" \
"Run PROG with modified scheduling priority\n" \
"\nOptions:" \
"nmeter '%250d%t %20c int %i bio %b mem %m forks%p'"
#define nohup_trivial_usage \
- "PROG [ARGS]"
+ "PROG ARGS"
#define nohup_full_usage "\n\n" \
"Run PROG immune to hangups, with output to a non-tty"
#define nohup_example_usage \
"[-aBbcDdeFfHhIiLlOovXx] " IF_DESKTOP("[-t TYPE] ") "[FILE]"
#define od_full_usage "\n\n" \
"Write an unambiguous representation, octal bytes by default, of FILE\n" \
- "(or standard input) to standard output."
+ "(or stdin) to stdout"
#define openvt_trivial_usage \
- "[-c N] [-sw] [PROG [ARGS]]"
+ "[-c N] [-sw] [PROG ARGS]"
#define openvt_full_usage "\n\n" \
"Start PROG on a new virtual terminal\n" \
"\nOptions:" \
#if (ENABLE_FEATURE_PIDOF_SINGLE || ENABLE_FEATURE_PIDOF_OMIT)
#define pidof_trivial_usage \
- "[OPTIONS] [NAME...]"
+ "[OPTIONS] [NAME]..."
#define USAGE_PIDOF "\n\nOptions:"
#else
#define pidof_trivial_usage \
- "[NAME...]"
+ "[NAME]..."
#define USAGE_PIDOF /* none */
#endif
#define pidof_full_usage "\n\n" \
"\n -f Force power off (don't go through init)" \
#define printenv_trivial_usage \
- "[VARIABLE...]"
+ "[VARIABLE]..."
#define printenv_full_usage "\n\n" \
- "Print all or part of environment.\n" \
- "If no environment VARIABLE specified, print them all."
+ "Print environment VARIABLEs.\n" \
+ "If no VARIABLE specified, print all."
#define printf_trivial_usage \
- "FORMAT [ARGUMENT...]"
+ "FORMAT [ARGUMENT]..."
#define printf_full_usage "\n\n" \
"Format and print ARGUMENT(s) according to FORMAT,\n" \
"where FORMAT controls the output exactly as in C printf"
"\n -n Disable byte order auto-detection" \
#define realpath_trivial_usage \
- "pathname..."
+ "FILE..."
#define realpath_full_usage "\n\n" \
- "Return the absolute pathnames of given argument"
+ "Return the absolute pathnames of given FILE"
#define reboot_trivial_usage \
"[-d DELAY] [-n] [-f]"
#define reformime_full_usage "\n\n" \
"Parse MIME-encoded message\n" \
"\nOptions:" \
- "\n -x prefix Extract content of MIME sections to files" \
- "\n -X prog [args] Filter content of MIME sections through prog." \
+ "\n -x PREFIX Extract content of MIME sections to files" \
+ "\n -X PROG ARGS Filter content of MIME sections through PROG" \
"\n Must be the last option" \
"\n" \
- "\nOther options are silently ignored." \
+ "\nOther options are silently ignored" \
#define renice_trivial_usage \
"{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]"
"\n -A inet" IF_FEATURE_IPV6("{6}") " Select address family" \
#define rpm_trivial_usage \
- "-i -q[ildc]p package.rpm"
+ "-i -q[ildc]p PACKAGE.rpm"
#define rpm_full_usage "\n\n" \
"Manipulate RPM packages\n" \
"\nOptions:" \
)
#define runcon_trivial_usage \
- "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] PROG [ARGS]\n" \
- " runcon CONTEXT PROG [ARGS]"
+ "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] PROG ARGS\n" \
+ " runcon CONTEXT PROG ARGS"
#define runcon_full_usage "\n\n" \
"Run PROG in a different security context\n" \
"\n CONTEXT Complete security context\n" \
"+ shutdown -h +4m"
#define runlevel_trivial_usage \
- "[utmp]"
+ "[FILE]"
#define runlevel_full_usage "\n\n" \
"Find the current and previous system runlevel\n" \
"\n" \
- "If no utmp file exists or if no runlevel record can be found,\n" \
+ "If no utmp FILE exists or if no runlevel record can be found,\n" \
"print \"unknown\""
#define runlevel_example_usage \
"$ runlevel /var/run/utmp\n" \
"N 2"
#define runsv_trivial_usage \
- "dir"
+ "DIR"
#define runsv_full_usage "\n\n" \
"Start and monitor a service and optionally an appendant log service"
#define runsvdir_trivial_usage \
- "[-P] [-s SCRIPT] dir"
+ "[-P] [-s SCRIPT] DIR"
#define runsvdir_full_usage "\n\n" \
"Start a runsv process for each subdirectory. If it exits, restart it.\n" \
"\n -P Put each runsv in a new session" \
"[-w] [-s SEP] [FIRST [INC]] LAST"
#define seq_full_usage "\n\n" \
"Print numbers from FIRST to LAST, in steps of INC.\n" \
- "FIRST, INC default to 1\n" \
+ "FIRST, INC default to 1.\n" \
"\nOptions:" \
"\n -w Pad to last with leading zeros" \
"\n -s SEP String separator" \
"\n -e DIR Exclude DIR" \
"\n -F Force reset of context to match file_context for customizable files" \
"\n -o FILE Save list of files with incorrect context" \
- "\n -s Take a list of files from standard input (instead of command line)" \
+ "\n -s Take a list of files from stdin (instead of command line)" \
"\n -v Show changes in file labels, if type or role are changing" \
"\n -vv Show changes in file labels, if type, role, or user are changing" \
"\n -W Display warnings about entries that had no matching files" \
"Set entries into the kernel's scancode-to-keycode map,\n" \
"allowing unusual keyboards to generate usable keycodes.\n\n" \
"SCANCODE may be either xx or e0xx (hexadecimal),\n" \
- "and KEYCODE is given in decimal" \
+ "and KEYCODE is given in decimal." \
#define setkeycodes_example_usage \
"$ setkeycodes e030 127\n"
"Change boolean setting"
#define setsid_trivial_usage \
- "PROG [ARG...]"
+ "PROG ARGS"
#define setsid_full_usage "\n\n" \
"Run PROG in a new session. PROG will have no controlling terminal\n" \
"and will not be affected by keyboard signals (Ctrl-C etc).\n" \
"$ cat TODO | split -a 2 -l 2 TODO_\n"
#define start_stop_daemon_trivial_usage \
- "[OPTIONS] [-S|-K] ... [-- arguments...]"
+ "[OPTIONS] [-S|-K] ... [-- ARGS...]"
#define start_stop_daemon_full_usage "\n\n" \
"Search for matching processes, and then\n" \
"-K: stop all matching processes.\n" \
"\n -s SH Shell to use instead of default shell" \
#define sulogin_trivial_usage \
- "[OPTIONS] [TTY]"
+ "[-t N] [TTY]"
#define sulogin_full_usage "\n\n" \
"Single user login\n" \
"\nOptions:" \
"\n -s Use System V sum algorithm (512byte blocks)" \
#define sv_trivial_usage \
- "[-v] [-w SEC] command service..."
+ "[-v] [-w SEC] CMD SERVICE_DIR..."
#define sv_full_usage "\n\n" \
"Control services monitored by runsv supervisor.\n" \
"Commands (only first character is enough):\n" \
#define svlogd_trivial_usage \
"[-ttv] [-r c] [-R abc] [-l len] [-b buflen] dir..."
#define svlogd_full_usage "\n\n" \
- "Continuously read log data from standard input, optionally\n" \
+ "Continuously read log data from stdin, optionally\n" \
"filter log messages, and write the data to one or more automatically\n" \
"rotated logs" \
#define fsync_trivial_usage \
"[OPTIONS] FILE..."
-#define fsync_full_usage \
+#define fsync_full_usage "\n\n" \
"Write files' buffered blocks to disk\n" \
"\nOptions:" \
"\n -d Avoid syncing metadata"
"[OPTIONS]"
#define syslogd_full_usage "\n\n" \
"System logging utility.\n" \
- "Note that this version of syslogd ignores /etc/syslog.conf.\n" \
+ "This version of syslogd ignores /etc/syslog.conf\n" \
"\nOptions:" \
"\n -n Run in foreground" \
"\n -O FILE Log to given file (default:/var/log/messages)" \
- "\n -l n Set local log level" \
+ "\n -l N Set local log level" \
"\n -S Smaller logging output" \
IF_FEATURE_ROTATE_LOGFILE( \
"\n -s SIZE Max size (KB) before rotate (default:200KB, 0=off)" \
#define tail_trivial_usage \
"[OPTIONS] [FILE]..."
#define tail_full_usage "\n\n" \
- "Print last 10 lines of each FILE (or standard input) to standard output.\n" \
+ "Print last 10 lines of each FILE (or stdin) to stdout.\n" \
"With more than one FILE, precede each with a header giving the file name.\n" \
"\nOptions:" \
IF_FEATURE_FANCY_TAIL( \
"$ tar -cf /tmp/tarball.tar /usr/local\n"
#define taskset_trivial_usage \
- "[-p] [MASK] [PID | PROG [ARGS]]"
+ "[-p] [MASK] [PID | PROG ARGS]"
#define taskset_full_usage "\n\n" \
"Set or get CPU affinity\n" \
"\nOptions:" \
#define tee_trivial_usage \
"[OPTIONS] [FILE]..."
#define tee_full_usage "\n\n" \
- "Copy standard input to each FILE, and also to standard output\n" \
+ "Copy stdin to each FILE, and also to stdout\n" \
"\nOptions:" \
"\n -a Append to the given FILEs, don't overwrite" \
"\n -i Ignore interrupt signals (SIGINT)" \
"\n -p PORT Port to listen on" \
"\n -b ADDR[:PORT] Address to bind to" \
"\n -F Run in foreground" \
- "\n -i Run as inetd service" \
+ "\n -i Inetd mode" \
IF_FEATURE_TELNETD_INETD_WAIT( \
- "\n -w SEC Run as inetd service in wait mode, linger time SEC" \
+ "\n -w SEC Inetd 'wait' mode, linger time SEC" \
"\n -S Log to syslog (implied by -i or without -F and -w)" \
) \
)
/* with not-implemented options: */
/* "[-hpEvv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] [-i DIR|-x CDB] [-t SEC] IP PORT PROG" */
#define tcpsvd_full_usage "\n\n" \
- "Create TCP socket, bind to IP:PORT and listen\n" \
+ "Create TCP socket, bind to IP:PORT and listen\n" \
"for incoming connection. Run PROG for each connection.\n" \
"\n IP IP to listen on. '0' = all" \
"\n PORT Port to listen on" \
- "\n PROG [ARGS] Program to run" \
+ "\n PROG ARGS Program to run" \
"\n -l NAME Local hostname (else looks up local hostname in DNS)" \
"\n -u USER[:GRP] Change to user/group after bind" \
"\n -c N Handle up to N connections simultaneously" \
"redirecting all further packets with same peer ip:port to it.\n" \
"\n IP IP to listen on. '0' = all" \
"\n PORT Port to listen on" \
- "\n PROG [ARGS] Program to run" \
+ "\n PROG ARGS Program to run" \
"\n -l NAME Local hostname (else looks up local hostname in DNS)" \
"\n -u USER[:GRP] Change to user/group after bind" \
"\n -c N Handle up to N connections simultaneously" \
"\n -u Access files as USER" \
#define time_trivial_usage \
- "[OPTIONS] PROG [ARGS]"
+ "[OPTIONS] PROG ARGS"
#define time_full_usage "\n\n" \
- "Run PROG. When it finishes, its resource usage is displayed.\n" \
+ "Run PROG, display resource usage when it exits\n" \
"\nOptions:" \
"\n -v Verbose" \
#define timeout_trivial_usage \
- "[-t SECS] [-s SIG] PROG [ARGS]"
+ "[-t SECS] [-s SIG] PROG ARGS"
#define timeout_full_usage "\n\n" \
"Runs PROG. Sends SIG to it if it is not gone in SECS seconds.\n" \
"Defaults: SECS: 10, SIG: TERM." \
#define top_full_usage "\n\n" \
"Provide a view of process activity in real time.\n" \
"Read the status of all processes from /proc each SECONDS\n" \
- "and show the status for however many processes will fit on the screen." \
+ "and display a screenful of them." \
+//TODO: add options and keyboard commands
#define touch_trivial_usage \
"[-c] [-d DATE] FILE [FILE]..."
#define tr_trivial_usage \
"[-cds] STRING1 [STRING2]"
#define tr_full_usage "\n\n" \
- "Translate, squeeze, and/or delete characters from\n" \
- "standard input, writing to standard output\n" \
+ "Translate, squeeze, or delete characters from stdin, writing to stdout\n" \
"\nOptions:" \
"\n -c Take complement of STRING1" \
"\n -d Delete input characters coded STRING1" \
) \
"\n -F Set the don't fragment bit" \
"\n -I Use ICMP ECHO instead of UDP datagrams" \
- "\n -l Display the ttl value of the returned packet" \
+ "\n -l Display the TTL value of the returned packet" \
"\n -d Set SO_DEBUG options to socket" \
"\n -n Print numeric addresses" \
"\n -r Bypass routing tables, send directly to HOST" \
"\n -m Max time-to-live (max number of hops)" \
"\n -p Base UDP port number used in probes" \
"\n (default 33434)" \
- "\n -q Number of probes per 'ttl' (default 3)" \
+ "\n -q Number of probes per TTL (default 3)" \
"\n -s IP address to use as the source address" \
"\n -t Type-of-service in probe packets (default 0)" \
"\n -w Time in seconds to wait for a response (default 3)" \
"\n -m Max time-to-live (max number of hops)" \
"\n -p Base UDP port number used in probes" \
"\n (default is 33434)" \
- "\n -q Number of probes per 'ttl' (default 3)" \
+ "\n -q Number of probes per TTL (default 3)" \
"\n -s IP address to use as the source address" \
"\n -t Type-of-service in probe packets (default 0)" \
"\n -w Time in seconds to wait for a response (default 3)" \
#define tty_trivial_usage \
""
#define tty_full_usage "\n\n" \
- "Print file name of standard input's terminal" \
+ "Print file name of stdin's terminal" \
IF_INCLUDE_SUSv2( "\n" \
"\nOptions:" \
"\n -s Print nothing, only return exit status" \
#define ttysize_trivial_usage \
"[w] [h]"
#define ttysize_full_usage "\n\n" \
- "Print dimension(s) of standard input's terminal, on error return 80x25"
+ "Print dimension(s) of stdin's terminal, on error return 80x25"
#define tunctl_trivial_usage \
"[-f device] ([-t name] | -d name)" IF_FEATURE_TUNCTL_UG(" [-u owner] [-g group] [-b]")
"Linux debian 2.4.23 #2 Tue Dec 23 17:09:10 MST 2003 i686 GNU/Linux\n"
#define uncompress_trivial_usage \
- "[-c] [-f] [FILE...]"
+ "[-c] [-f] [FILE]..."
#define uncompress_full_usage "\n\n" \
"Uncompress .Z file[s]\n" \
"\nOptions:" \
#define unexpand_trivial_usage \
"[-f][-a][-t N] [FILE|-]"
#define unexpand_full_usage "\n\n" \
- "Convert spaces to tabs, writing to standard output\n" \
+ "Convert spaces to tabs, writing to stdout\n" \
"\nOptions:" \
IF_FEATURE_UNEXPAND_LONG_OPTIONS( \
"\n -a,--all Convert all blanks" \
#define wall_trivial_usage \
"[FILE]"
#define wall_full_usage "\n\n" \
- "Write content of FILE or standard-input to all logged-in users"
+ "Write content of FILE or stdin to all logged-in users"
#define wall_sample_usage \
"echo foo | wall\n" \
"wall ./mymessage"
#define watch_trivial_usage \
- "[-n seconds] [-t] PROG [ARGS]"
+ "[-n SEC] [-t] PROG ARGS"
#define watch_full_usage "\n\n" \
"Run PROG periodically\n" \
"\nOptions:" \
#define wc_trivial_usage \
"[OPTIONS] [FILE]..."
#define wc_full_usage "\n\n" \
- "Print line, word, and byte counts for each FILE, and a total line if\n" \
- "more than one FILE is specified. With no FILE, read standard input.\n" \
+ "Print line, word, and byte counts for each FILE (or stdin),\n" \
+ "and a total line if more than one FILE is specified\n" \
"\nOptions:" \
"\n -c Print the byte counts" \
"\n -l Print the newline counts" \
IF_FEATURE_WGET_LONG_OPTIONS( \
"[-c|--continue] [-s|--spider] [-q|--quiet] [-O|--output-document file]\n" \
" [--header 'header: value'] [-Y|--proxy on/off] [-P DIR]\n" \
- " [-U|--user-agent agent] url" \
+ " [--no-check-certificate] [-U|--user-agent agent] url" \
) \
IF_NOT_FEATURE_WGET_LONG_OPTIONS( \
"[-csq] [-O file] [-Y on/off] [-P DIR] [-U agent] url" \
"Print the user name associated with the current effective user id"
#define xargs_trivial_usage \
- "[OPTIONS] [PROG [ARGS]]"
+ "[OPTIONS] [PROG ARGS]"
#define xargs_full_usage "\n\n" \
- "Run PROG on every item given by standard input\n" \
+ "Run PROG on every item given by stdin\n" \
"\nOptions:" \
IF_FEATURE_XARGS_SUPPORT_CONFIRMATION( \
"\n -p Ask user whether to run each command") \