Changeset 3232 in MondoRescue for branches/3.2/mindi-busybox/include/usage.src.h
- Timestamp:
- Jan 1, 2014, 12:47:38 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3.2/mindi-busybox/include/usage.src.h
r2725 r3232 13 13 #define BB_USAGE_H 1 14 14 15 16 15 #define NOUSAGE_STR "\b" 17 16 18 17 INSERT 19 18 20 #define acpid_trivial_usage \21 "[-d] [-c CONFDIR] [-l LOGFILE] [-a ACTIONFILE] [-M MAPFILE] [-e PROC_EVENT_FILE] [-p PIDFILE]"22 #define acpid_full_usage "\n\n" \23 "Listen to ACPI events and spawn specific helpers on event arrival\n" \24 "\nOptions:" \25 "\n -c DIR Config directory [/etc/acpi]" \26 "\n -d Don't daemonize, (implies -f)" \27 "\n -e FILE /proc event file [/proc/acpi/event]" \28 "\n -f Run in foreground" \29 "\n -l FILE Log file [/var/log/acpid.log]" \30 "\n -p FILE Pid file [/var/run/acpid.pid]" \31 "\n -a FILE Action file [/etc/acpid.conf]" \32 "\n -M FILE Map file [/etc/acpi.map]" \33 IF_FEATURE_ACPID_COMPAT( \34 "\n\nAccept and ignore compatibility options -g -m -s -S -v" \35 )36 37 #define acpid_example_usage \38 "Without -e option, acpid uses all /dev/input/event* files\n" \39 "# acpid\n" \40 "# acpid -l /var/log/my-acpi-log\n" \41 "# acpid -e /proc/acpi/event\n"42 43 #define addgroup_trivial_usage \44 "[-g GID] " IF_FEATURE_ADDUSER_TO_GROUP("[USER] ") "GROUP"45 #define addgroup_full_usage "\n\n" \46 "Add a group " IF_FEATURE_ADDUSER_TO_GROUP("or add a user to a group") "\n" \47 "\nOptions:" \48 "\n -g GID Group id" \49 "\n -S Create a system group" \50 51 #define adduser_trivial_usage \52 "[OPTIONS] USER"53 #define adduser_full_usage "\n\n" \54 "Add a user\n" \55 "\nOptions:" \56 "\n -h DIR Home directory" \57 "\n -g GECOS GECOS field" \58 "\n -s SHELL Login shell" \59 "\n -G GRP Add user to existing group" \60 "\n -S Create a system user" \61 "\n -D Don't assign a password" \62 "\n -H Don't create home directory" \63 "\n -u UID User id" \64 65 #define adjtimex_trivial_usage \66 "[-q] [-o OFF] [-f FREQ] [-p TCONST] [-t TICK]"67 #define adjtimex_full_usage "\n\n" \68 "Read and optionally set system timebase parameters. See adjtimex(2)\n" \69 "\nOptions:" \70 "\n -q Quiet" \71 "\n -o OFF Time offset, microseconds" \72 "\n -f FREQ Frequency adjust, integer kernel units (65536 is 1ppm)" \73 "\n (positive values make clock run faster)" \74 "\n -t TICK Microseconds per tick, usually 10000" \75 "\n -p TCONST" \76 77 #define ar_trivial_usage \78 "[-o] [-v] [-p] [-t] [-x] ARCHIVE FILES"79 #define ar_full_usage "\n\n" \80 "Extract or list FILES from an ar archive\n" \81 "\nOptions:" \82 "\n -o Preserve original dates" \83 "\n -p Extract to stdout" \84 "\n -t List" \85 "\n -x Extract" \86 "\n -v Verbose" \87 88 #define arp_trivial_usage \89 "\n[-vn] [-H HWTYPE] [-i IF] -a [HOSTNAME]" \90 "\n[-v] [-i IF] -d HOSTNAME [pub]" \91 "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [temp]" \92 "\n[-v] [-H HWTYPE] [-i IF] -s HOSTNAME HWADDR [netmask MASK] pub" \93 "\n[-v] [-H HWTYPE] [-i IF] -Ds HOSTNAME IFACE [netmask MASK] pub"94 #define arp_full_usage "\n\n" \95 "Manipulate ARP cache\n" \96 "\nOptions:" \97 "\n -a Display (all) hosts" \98 "\n -s Set new ARP entry" \99 "\n -d Delete a specified entry" \100 "\n -v Verbose" \101 "\n -n Don't resolve names" \102 "\n -i IF Network interface" \103 "\n -D Read <hwaddr> from given device" \104 "\n -A,-p AF Protocol family" \105 "\n -H HWTYPE Hardware address type" \106 107 #define arping_trivial_usage \108 "[-fqbDUA] [-c CNT] [-w TIMEOUT] [-I IFACE] [-s SRC_IP] DST_IP"109 #define arping_full_usage "\n\n" \110 "Send ARP requests/replies\n" \111 "\nOptions:" \112 "\n -f Quit on first ARP reply" \113 "\n -q Quiet" \114 "\n -b Keep broadcasting, don't go unicast" \115 "\n -D Duplicated address detection mode" \116 "\n -U Unsolicited ARP mode, update your neighbors" \117 "\n -A ARP answer mode, update your neighbors" \118 "\n -c N Stop after sending N ARP requests" \119 "\n -w TIMEOUT Time to wait for ARP reply, seconds" \120 "\n -I IFACE Interface to use (default eth0)" \121 "\n -s SRC_IP Sender IP address" \122 "\n DST_IP Target IP address" \123 124 #define awk_trivial_usage \125 "[OPTIONS] [AWK_PROGRAM] [FILE]..."126 #define awk_full_usage "\n\n" \127 "Options:" \128 "\n -v VAR=VAL Set variable" \129 "\n -F SEP Use SEP as field separator" \130 "\n -f FILE Read program from FILE" \131 132 #define basename_trivial_usage \133 "FILE [SUFFIX]"134 #define basename_full_usage "\n\n" \135 "Strip directory path and .SUFFIX from FILE\n"136 #define basename_example_usage \137 "$ basename /usr/local/bin/foo\n" \138 "foo\n" \139 "$ basename /usr/local/bin/\n" \140 "bin\n" \141 "$ basename /foo/bar.txt .txt\n" \142 "bar"143 144 #define beep_trivial_usage \145 "-f FREQ -l LEN -d DELAY -r COUNT -n"146 #define beep_full_usage "\n\n" \147 "Options:" \148 "\n -f Frequency in Hz" \149 "\n -l Length in ms" \150 "\n -d Delay in ms" \151 "\n -r Repetitions" \152 "\n -n Start new tone" \153 154 #define blkid_trivial_usage \155 ""156 #define blkid_full_usage "\n\n" \157 "Print UUIDs of all filesystems"158 159 #define brctl_trivial_usage \160 "COMMAND [BRIDGE [INTERFACE]]"161 #define brctl_full_usage "\n\n" \162 "Manage ethernet bridges\n" \163 "\nCommands:" \164 IF_FEATURE_BRCTL_SHOW( \165 "\n show Show a list of bridges" \166 ) \167 "\n addbr BRIDGE Create BRIDGE" \168 "\n delbr BRIDGE Delete BRIDGE" \169 "\n addif BRIDGE IFACE Add IFACE to BRIDGE" \170 "\n delif BRIDGE IFACE Delete IFACE from BRIDGE" \171 IF_FEATURE_BRCTL_FANCY( \172 "\n setageing BRIDGE TIME Set ageing time" \173 "\n setfd BRIDGE TIME Set bridge forward delay" \174 "\n sethello BRIDGE TIME Set hello time" \175 "\n setmaxage BRIDGE TIME Set max message age" \176 "\n setpathcost BRIDGE COST Set path cost" \177 "\n setportprio BRIDGE PRIO Set port priority" \178 "\n setbridgeprio BRIDGE PRIO Set bridge priority" \179 "\n stp BRIDGE [1/yes/on|0/no/off] STP on/off" \180 ) \181 182 #define bzip2_trivial_usage \183 "[OPTIONS] [FILE]..."184 #define bzip2_full_usage "\n\n" \185 "Compress FILEs (or stdin) with bzip2 algorithm\n" \186 "\nOptions:" \187 "\n -1..9 Compression level" \188 "\n -d Decompress" \189 "\n -c Write to stdout" \190 "\n -f Force" \191 192 19 #define busybox_notes_usage \ 193 20 "Hello world!\n" 194 21 195 #define lzop_trivial_usage \196 "[-cfvd123456789CF] [FILE]..."197 #define lzop_full_usage "\n\n" \198 "Options:" \199 "\n -1..9 Compression level" \200 "\n -d Decompress" \201 "\n -c Write to stdout" \202 "\n -f Force" \203 "\n -v Verbose" \204 "\n -F Don't store or verify checksum" \205 "\n -C Also write checksum of compressed block" \206 207 #define lzopcat_trivial_usage \208 "[-vCF] [FILE]..."209 #define lzopcat_full_usage "\n\n" \210 " -v Verbose" \211 "\n -F Don't store or verify checksum" \212 213 #define unlzop_trivial_usage \214 "[-cfvCF] [FILE]..."215 #define unlzop_full_usage "\n\n" \216 "Options:" \217 "\n -c Write to stdout" \218 "\n -f Force" \219 "\n -v Verbose" \220 "\n -F Don't store or verify checksum" \221 222 #define unlzma_trivial_usage \223 "[-cf] [FILE]..."224 #define unlzma_full_usage "\n\n" \225 "Decompress FILE (or stdin)\n" \226 "\nOptions:" \227 "\n -c Write to stdout" \228 "\n -f Force" \229 230 #define lzma_trivial_usage \231 "-d [-cf] [FILE]..."232 #define lzma_full_usage "\n\n" \233 "Decompress FILE (or stdin)\n" \234 "\nOptions:" \235 "\n -d Decompress" \236 "\n -c Write to stdout" \237 "\n -f Force" \238 239 #define lzcat_trivial_usage \240 "FILE"241 #define lzcat_full_usage "\n\n" \242 "Decompress to stdout"243 244 #define unxz_trivial_usage \245 "[-cf] [FILE]..."246 #define unxz_full_usage "\n\n" \247 "Decompress FILE (or stdin)\n" \248 "\nOptions:" \249 "\n -c Write to stdout" \250 "\n -f Force" \251 252 #define xz_trivial_usage \253 "-d [-cf] [FILE]..."254 #define xz_full_usage "\n\n" \255 "Decompress FILE (or stdin)\n" \256 "\nOptions:" \257 "\n -d Decompress" \258 "\n -c Write to stdout" \259 "\n -f Force" \260 261 #define xzcat_trivial_usage \262 "FILE"263 #define xzcat_full_usage "\n\n" \264 "Decompress to stdout"265 266 #define cal_trivial_usage \267 "[-jy] [[MONTH] YEAR]"268 #define cal_full_usage "\n\n" \269 "Display a calendar\n" \270 "\nOptions:" \271 "\n -j Use julian dates" \272 "\n -y Display the entire year" \273 274 #define cat_trivial_usage \275 "[FILE]..."276 #define cat_full_usage "\n\n" \277 "Concatenate FILEs and print them to stdout" \278 279 #define cat_example_usage \280 "$ cat /proc/uptime\n" \281 "110716.72 17.67"282 283 #define catv_trivial_usage \284 "[-etv] [FILE]..."285 #define catv_full_usage "\n\n" \286 "Display nonprinting characters as ^x or M-x\n" \287 "\nOptions:" \288 "\n -e End each line with $" \289 "\n -t Show tabs as ^I" \290 "\n -v Don't use ^x or M-x escapes" \291 292 #define chat_trivial_usage \293 "EXPECT [SEND [EXPECT [SEND...]]]"294 #define chat_full_usage "\n\n" \295 "Useful for interacting with a modem connected to stdin/stdout.\n" \296 "A script consists of one or more \"expect-send\" pairs of strings,\n" \297 "each pair is a pair of arguments. Example:\n" \298 "chat '' ATZ OK ATD123456 CONNECT '' ogin: pppuser word: ppppass '~'" \299 300 #define chattr_trivial_usage \301 "[-R] [-+=AacDdijsStTu] [-v VERSION] [FILE]..."302 #define chattr_full_usage "\n\n" \303 "Change file attributes on an ext2 fs\n" \304 "\nModifiers:" \305 "\n - Remove attributes" \306 "\n + Add attributes" \307 "\n = Set attributes" \308 "\nAttributes:" \309 "\n A Don't track atime" \310 "\n a Append mode only" \311 "\n c Enable compress" \312 "\n D Write dir contents synchronously" \313 "\n d Don't backup with dump" \314 "\n i Cannot be modified (immutable)" \315 "\n j Write all data to journal first" \316 "\n s Zero disk storage when deleted" \317 "\n S Write file contents synchronously" \318 "\n t Disable tail-merging of partial blocks with other files" \319 "\n u Allow file to be undeleted" \320 "\nOptions:" \321 "\n -R Recurse" \322 "\n -v Set the file's version/generation number" \323 324 #define chcon_trivial_usage \325 "[OPTIONS] CONTEXT FILE..." \326 "\n chcon [OPTIONS] [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE..." \327 IF_FEATURE_CHCON_LONG_OPTIONS( \328 "\n chcon [OPTIONS] --reference=RFILE FILE..." \329 )330 #define chcon_full_usage "\n\n" \331 "Change the security context of each FILE to CONTEXT\n" \332 IF_FEATURE_CHCON_LONG_OPTIONS( \333 "\n -v,--verbose Verbose" \334 "\n -c,--changes Report changes made" \335 "\n -h,--no-dereference Affect symlinks instead of their targets" \336 "\n -f,--silent,--quiet Suppress most error messages" \337 "\n --reference=RFILE Use RFILE's group instead of using a CONTEXT value" \338 "\n -u,--user=USER Set user/role/type/range in the target" \339 "\n -r,--role=ROLE security context" \340 "\n -t,--type=TYPE" \341 "\n -l,--range=RANGE" \342 "\n -R,--recursive Recurse" \343 ) \344 IF_NOT_FEATURE_CHCON_LONG_OPTIONS( \345 "\n -v Verbose" \346 "\n -c Report changes made" \347 "\n -h Affect symlinks instead of their targets" \348 "\n -f Suppress most error messages" \349 "\n -u USER Set user/role/type/range in the target security context" \350 "\n -r ROLE" \351 "\n -t TYPE" \352 "\n -l RNG" \353 "\n -R Recurse" \354 )355 356 #define chmod_trivial_usage \357 "[-R"IF_DESKTOP("cvf")"] MODE[,MODE]... FILE..."358 #define chmod_full_usage "\n\n" \359 "Each MODE is one or more of the letters ugoa, one of the\n" \360 "symbols +-= and one or more of the letters rwxst\n" \361 "\nOptions:" \362 "\n -R Recurse" \363 IF_DESKTOP( \364 "\n -c List changed files" \365 "\n -v List all files" \366 "\n -f Hide errors" \367 )368 #define chmod_example_usage \369 "$ ls -l /tmp/foo\n" \370 "-rw-rw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo\n" \371 "$ chmod u+x /tmp/foo\n" \372 "$ ls -l /tmp/foo\n" \373 "-rwxrw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo*\n" \374 "$ chmod 444 /tmp/foo\n" \375 "$ ls -l /tmp/foo\n" \376 "-r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo\n"377 378 #define chgrp_trivial_usage \379 "[-RhLHP"IF_DESKTOP("cvf")"]... GROUP FILE..."380 #define chgrp_full_usage "\n\n" \381 "Change the group membership of each FILE to GROUP\n" \382 "\nOptions:" \383 "\n -R Recurse" \384 "\n -h Affect symlinks instead of symlink targets" \385 "\n -L Traverse all symlinks to directories" \386 "\n -H Traverse symlinks on command line only" \387 "\n -P Don't traverse symlinks (default)" \388 IF_DESKTOP( \389 "\n -c List changed files" \390 "\n -v Verbose" \391 "\n -f Hide errors" \392 )393 #define chgrp_example_usage \394 "$ ls -l /tmp/foo\n" \395 "-r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo\n" \396 "$ chgrp root /tmp/foo\n" \397 "$ ls -l /tmp/foo\n" \398 "-r--r--r-- 1 andersen root 0 Apr 12 18:25 /tmp/foo\n"399 400 #define chown_trivial_usage \401 "[-RhLHP"IF_DESKTOP("cvf")"]... OWNER[<.|:>[GROUP]] FILE..."402 #define chown_full_usage "\n\n" \403 "Change the owner and/or group of each FILE to OWNER and/or GROUP\n" \404 "\nOptions:" \405 "\n -R Recurse" \406 "\n -h Affect symlinks instead of symlink targets" \407 "\n -L Traverse all symlinks to directories" \408 "\n -H Traverse symlinks on command line only" \409 "\n -P Don't traverse symlinks (default)" \410 IF_DESKTOP( \411 "\n -c List changed files" \412 "\n -v List all files" \413 "\n -f Hide errors" \414 )415 #define chown_example_usage \416 "$ ls -l /tmp/foo\n" \417 "-r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo\n" \418 "$ chown root /tmp/foo\n" \419 "$ ls -l /tmp/foo\n" \420 "-r--r--r-- 1 root andersen 0 Apr 12 18:25 /tmp/foo\n" \421 "$ chown root.root /tmp/foo\n" \422 "ls -l /tmp/foo\n" \423 "-r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo\n"424 425 #define chpst_trivial_usage \426 "[-vP012] [-u USER[:GRP]] [-U USER[:GRP]] [-e DIR]\n" \427 " [-/ DIR] [-n NICE] [-m BYTES] [-d BYTES] [-o N]\n" \428 " [-p N] [-f BYTES] [-c BYTES] PROG ARGS"429 #define chpst_full_usage "\n\n" \430 "Change the process state, run PROG\n" \431 "\nOptions:" \432 "\n -u USER[:GRP] Set uid and gid" \433 "\n -U USER[:GRP] Set $UID and $GID in environment" \434 "\n -e DIR Set environment variables as specified by files" \435 "\n in DIR: file=1st_line_of_file" \436 "\n -/ DIR Chroot to DIR" \437 "\n -n NICE Add NICE to nice value" \438 "\n -m BYTES Same as -d BYTES -s BYTES -l BYTES" \439 "\n -d BYTES Limit data segment" \440 "\n -o N Limit number of open files per process" \441 "\n -p N Limit number of processes per uid" \442 "\n -f BYTES Limit output file sizes" \443 "\n -c BYTES Limit core file size" \444 "\n -v Verbose" \445 "\n -P Create new process group" \446 "\n -0 Close stdin" \447 "\n -1 Close stdout" \448 "\n -2 Close stderr" \449 450 #define setuidgid_trivial_usage \451 "USER PROG ARGS"452 #define setuidgid_full_usage "\n\n" \453 "Set uid and gid to USER's uid and gid, drop supplementary group ids,\n" \454 "run PROG"455 #define envuidgid_trivial_usage \456 "USER PROG ARGS"457 #define envuidgid_full_usage "\n\n" \458 "Set $UID to USER's uid and $GID to USER's gid, run PROG"459 #define envdir_trivial_usage \460 "DIR PROG ARGS"461 #define envdir_full_usage "\n\n" \462 "Set various environment variables as specified by files\n" \463 "in the directory DIR, run PROG"464 #define softlimit_trivial_usage \465 "[-a BYTES] [-m BYTES] [-d BYTES] [-s BYTES] [-l BYTES]\n" \466 " [-f BYTES] [-c BYTES] [-r BYTES] [-o N] [-p N] [-t N]\n" \467 " PROG ARGS"468 #define softlimit_full_usage "\n\n" \469 "Set soft resource limits, then run PROG\n" \470 "\nOptions:" \471 "\n -a BYTES Limit total size of all segments" \472 "\n -m BYTES Same as -d BYTES -s BYTES -l BYTES -a BYTES" \473 "\n -d BYTES Limit data segment" \474 "\n -s BYTES Limit stack segment" \475 "\n -l BYTES Limit locked memory size" \476 "\n -o N Limit number of open files per process" \477 "\n -p N Limit number of processes per uid" \478 "\nOptions controlling file sizes:" \479 "\n -f BYTES Limit output file sizes" \480 "\n -c BYTES Limit core file size" \481 "\nEfficiency opts:" \482 "\n -r BYTES Limit resident set size" \483 "\n -t N Limit CPU time, process receives" \484 "\n a SIGXCPU after N seconds" \485 486 #define chroot_trivial_usage \487 "NEWROOT [PROG ARGS]"488 #define chroot_full_usage "\n\n" \489 "Run PROG with root directory set to NEWROOT"490 #define chroot_example_usage \491 "$ ls -l /bin/ls\n" \492 "lrwxrwxrwx 1 root root 12 Apr 13 00:46 /bin/ls -> /BusyBox\n" \493 "# mount /dev/hdc1 /mnt -t minix\n" \494 "# chroot /mnt\n" \495 "# ls -l /bin/ls\n" \496 "-rwxr-xr-x 1 root root 40816 Feb 5 07:45 /bin/ls*\n"497 498 #define chvt_trivial_usage \499 "N"500 #define chvt_full_usage "\n\n" \501 "Change the foreground virtual terminal to /dev/ttyN"502 503 #define cksum_trivial_usage \504 "FILES..."505 #define cksum_full_usage "\n\n" \506 "Calculate the CRC32 checksums of FILES"507 508 #define clear_trivial_usage \509 ""510 #define clear_full_usage "\n\n" \511 "Clear screen"512 513 #define cmp_trivial_usage \514 "[-l] [-s] FILE1 [FILE2" IF_DESKTOP(" [SKIP1 [SKIP2]]") "]"515 #define cmp_full_usage "\n\n" \516 "Compare FILE1 with FILE2 (or stdin)\n" \517 "\nOptions:" \518 "\n -l Write the byte numbers (decimal) and values (octal)" \519 "\n for all differing bytes" \520 "\n -s Quiet" \521 522 #define comm_trivial_usage \523 "[-123] FILE1 FILE2"524 #define comm_full_usage "\n\n" \525 "Compare FILE1 with FILE2\n" \526 "\nOptions:" \527 "\n -1 Suppress lines unique to FILE1" \528 "\n -2 Suppress lines unique to FILE2" \529 "\n -3 Suppress lines common to both files" \530 531 #define bbconfig_trivial_usage \532 ""533 #define bbconfig_full_usage "\n\n" \534 "Print the config file used by busybox build"535 536 #define chrt_trivial_usage \537 "[-prfom] [PRIO] [PID | PROG ARGS]"538 #define chrt_full_usage "\n\n" \539 "Change scheduling priority and class for a process\n" \540 "\nOptions:" \541 "\n -p Operate on PID" \542 "\n -r Set SCHED_RR class" \543 "\n -f Set SCHED_FIFO class" \544 "\n -o Set SCHED_OTHER class" \545 "\n -m Show min/max priorities" \546 547 #define chrt_example_usage \548 "$ chrt -r 4 sleep 900; x=$!\n" \549 "$ chrt -f -p 3 $x\n" \550 "You need CAP_SYS_NICE privileges to set scheduling attributes of a process"551 552 #define nice_trivial_usage \553 "[-n ADJUST] [PROG ARGS]"554 #define nice_full_usage "\n\n" \555 "Change scheduling priority, run PROG\n" \556 "\nOptions:" \557 "\n -n ADJUST Adjust priority by ADJUST" \558 559 #define renice_trivial_usage \560 "{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]"561 #define renice_full_usage "\n\n" \562 "Change scheduling priority for a running process\n" \563 "\nOptions:" \564 "\n -n Adjust current nice value (smaller is faster)" \565 "\n -p Process id(s) (default)" \566 "\n -g Process group id(s)" \567 "\n -u Process user name(s) and/or id(s)" \568 569 #define ionice_trivial_usage \570 "[-c 1-3] [-n 0-7] [-p PID] [PROG]"571 #define ionice_full_usage "\n\n" \572 "Change I/O priority and class\n" \573 "\nOptions:" \574 "\n -c Class. 1:realtime 2:best-effort 3:idle" \575 "\n -n Priority" \576 577 #define cp_trivial_usage \578 "[OPTIONS] SOURCE DEST"579 #define cp_full_usage "\n\n" \580 "Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY\n" \581 "\nOptions:" \582 "\n -a Same as -dpR" \583 IF_SELINUX( \584 "\n -c Preserve security context" \585 ) \586 "\n -R,-r Recurse" \587 "\n -d,-P Preserve symlinks (default if -R)" \588 "\n -L Follow all symlinks" \589 "\n -H Follow symlinks on command line" \590 "\n -p Preserve file attributes if possible" \591 "\n -f Overwrite" \592 "\n -i Prompt before overwrite" \593 "\n -l,-s Create (sym)links" \594 595 #define cpio_trivial_usage \596 "[-dmvu] [-F FILE]" IF_FEATURE_CPIO_O(" [-H newc]") \597 " [-ti"IF_FEATURE_CPIO_O("o")"]" IF_FEATURE_CPIO_P(" [-p DIR]")598 #define cpio_full_usage "\n\n" \599 "Extract or list files from a cpio archive" \600 IF_FEATURE_CPIO_O(", or" \601 "\ncreate an archive" IF_FEATURE_CPIO_P(" (-o) or copy files (-p)") \602 " using file list on stdin" \603 ) \604 "\n" \605 "\nMain operation mode:" \606 "\n -t List" \607 "\n -i Extract" \608 IF_FEATURE_CPIO_O( \609 "\n -o Create (requires -H newc)" \610 ) \611 IF_FEATURE_CPIO_P( \612 "\n -p DIR Copy files to DIR" \613 ) \614 "\nOptions:" \615 "\n -d Make leading directories" \616 "\n -m Preserve mtime" \617 "\n -v Verbose" \618 "\n -u Overwrite" \619 "\n -F FILE Input (-t,-i,-p) or output (-o) file" \620 IF_FEATURE_CPIO_O( \621 "\n -H newc Archive format" \622 ) \623 624 #define crond_trivial_usage \625 "-fbS -l N " IF_FEATURE_CROND_D("-d N ") "-L LOGFILE -c DIR"626 #define crond_full_usage "\n\n" \627 " -f Foreground" \628 "\n -b Background (default)" \629 "\n -S Log to syslog (default)" \630 "\n -l Set log level. 0 is the most verbose, default 8" \631 IF_FEATURE_CROND_D( \632 "\n -d Set log level, log to stderr" \633 ) \634 "\n -L Log to file" \635 "\n -c Working dir" \636 637 #define crontab_trivial_usage \638 "[-c DIR] [-u USER] [-ler]|[FILE]"639 #define crontab_full_usage "\n\n" \640 " -c Crontab directory" \641 "\n -u User" \642 "\n -l List crontab" \643 "\n -e Edit crontab" \644 "\n -r Delete crontab" \645 "\n FILE Replace crontab by FILE ('-': stdin)" \646 647 #define cryptpw_trivial_usage \648 "[OPTIONS] [PASSWORD] [SALT]"649 /* We do support -s, we just don't mention it */650 #define cryptpw_full_usage "\n\n" \651 "Crypt the PASSWORD using crypt(3)\n" \652 "\nOptions:" \653 IF_LONG_OPTS( \654 "\n -P,--password-fd=N Read password from fd N" \655 /* "\n -s,--stdin Use stdin; like -P0" */ \656 "\n -m,--method=TYPE Encryption method TYPE" \657 "\n -S,--salt=SALT" \658 ) \659 IF_NOT_LONG_OPTS( \660 "\n -P N Read password from fd N" \661 /* "\n -s Use stdin; like -P0" */ \662 "\n -m TYPE Encryption method TYPE" \663 "\n -S SALT" \664 ) \665 666 /* mkpasswd is an alias to cryptpw */667 668 #define mkpasswd_trivial_usage \669 "[OPTIONS] [PASSWORD] [SALT]"670 /* We do support -s, we just don't mention it */671 #define mkpasswd_full_usage "\n\n" \672 "Crypt the PASSWORD using crypt(3)\n" \673 "\nOptions:" \674 IF_LONG_OPTS( \675 "\n -P,--password-fd=N Read password from fd N" \676 /* "\n -s,--stdin Use stdin; like -P0" */ \677 "\n -m,--method=TYPE Encryption method TYPE" \678 "\n -S,--salt=SALT" \679 ) \680 IF_NOT_LONG_OPTS( \681 "\n -P N Read password from fd N" \682 /* "\n -s Use stdin; like -P0" */ \683 "\n -m TYPE Encryption method TYPE" \684 "\n -S SALT" \685 ) \686 687 #define cut_trivial_usage \688 "[OPTIONS] [FILE]..."689 #define cut_full_usage "\n\n" \690 "Print selected fields from each input FILE to stdout\n" \691 "\nOptions:" \692 "\n -b LIST Output only bytes from LIST" \693 "\n -c LIST Output only characters from LIST" \694 "\n -d CHAR Use CHAR instead of tab as the field delimiter" \695 "\n -s Output only the lines containing delimiter" \696 "\n -f N Print only these fields" \697 "\n -n Ignored" \698 699 #define cut_example_usage \700 "$ echo \"Hello world\" | cut -f 1 -d ' '\n" \701 "Hello\n" \702 "$ echo \"Hello world\" | cut -f 2 -d ' '\n" \703 "world\n"704 705 #define dd_trivial_usage \706 "[if=FILE] [of=FILE] " IF_FEATURE_DD_IBS_OBS("[ibs=N] [obs=N] ") "[bs=N] [count=N] [skip=N]\n" \707 " [seek=N]" IF_FEATURE_DD_IBS_OBS(" [conv=notrunc|noerror|sync|fsync]")708 #define dd_full_usage "\n\n" \709 "Copy a file with converting and formatting\n" \710 "\nOptions:" \711 "\n if=FILE Read from FILE instead of stdin" \712 "\n of=FILE Write to FILE instead of stdout" \713 "\n bs=N Read and write N bytes at a time" \714 IF_FEATURE_DD_IBS_OBS( \715 "\n ibs=N Read N bytes at a time" \716 ) \717 IF_FEATURE_DD_IBS_OBS( \718 "\n obs=N Write N bytes at a time" \719 ) \720 "\n count=N Copy only N input blocks" \721 "\n skip=N Skip N input blocks" \722 "\n seek=N Skip N output blocks" \723 IF_FEATURE_DD_IBS_OBS( \724 "\n conv=notrunc Don't truncate output file" \725 "\n conv=noerror Continue after read errors" \726 "\n conv=sync Pad blocks with zeros" \727 "\n conv=fsync Physically write data out before finishing" \728 ) \729 "\n" \730 "\nNumbers may be suffixed by c (x1), w (x2), b (x512), kD (x1000), k (x1024)," \731 "\nMD (x1000000), M (x1048576), GD (x1000000000) or G (x1073741824)" \732 733 #define dd_example_usage \734 "$ dd if=/dev/zero of=/dev/ram1 bs=1M count=4\n" \735 "4+0 records in\n" \736 "4+0 records out\n"737 738 #define deallocvt_trivial_usage \739 "[N]"740 #define deallocvt_full_usage "\n\n" \741 "Deallocate unused virtual terminal /dev/ttyN"742 743 #define delgroup_trivial_usage \744 IF_FEATURE_DEL_USER_FROM_GROUP("[USER] ")"GROUP"745 #define delgroup_full_usage "\n\n" \746 "Delete group GROUP from the system" \747 IF_FEATURE_DEL_USER_FROM_GROUP(" or user USER from group GROUP")748 749 #define deluser_trivial_usage \750 "USER"751 #define deluser_full_usage "\n\n" \752 "Delete USER from the system"753 754 #define devmem_trivial_usage \755 "ADDRESS [WIDTH [VALUE]]"756 757 #define devmem_full_usage "\n\n" \758 "Read/write from physical address\n" \759 "\n ADDRESS Address to act upon" \760 "\n WIDTH Width (8/16/...)" \761 "\n VALUE Data to be written" \762 763 #define devfsd_trivial_usage \764 "mntpnt [-v]" IF_DEVFSD_FG_NP("[-fg][-np]")765 #define devfsd_full_usage "\n\n" \766 "Manage devfs permissions and old device name symlinks\n" \767 "\nOptions:" \768 "\n mntpnt The mount point where devfs is mounted" \769 "\n -v Print the protocol version numbers for devfsd" \770 "\n and the kernel-side protocol version and exit" \771 IF_DEVFSD_FG_NP( \772 "\n -fg Run in foreground" \773 "\n -np Exit after parsing the configuration file" \774 "\n and processing synthetic REGISTER events," \775 "\n don't poll for events" \776 )777 778 #define df_trivial_usage \779 "[-Pk" \780 IF_FEATURE_HUMAN_READABLE("mh") \781 IF_FEATURE_DF_FANCY("ai] [-B SIZE") \782 "] [FILESYSTEM]..."783 #define df_full_usage "\n\n" \784 "Print filesystem usage statistics\n" \785 "\nOptions:" \786 "\n -P POSIX output format" \787 "\n -k 1024-byte blocks (default)" \788 IF_FEATURE_HUMAN_READABLE( \789 "\n -m 1M-byte blocks" \790 "\n -h Human readable (e.g. 1K 243M 2G)" \791 ) \792 IF_FEATURE_DF_FANCY( \793 "\n -a Show all filesystems" \794 "\n -i Inodes" \795 "\n -B SIZE Blocksize" \796 ) \797 798 #define df_example_usage \799 "$ df\n" \800 "Filesystem 1K-blocks Used Available Use% Mounted on\n" \801 "/dev/sda3 8690864 8553540 137324 98% /\n" \802 "/dev/sda1 64216 36364 27852 57% /boot\n" \803 "$ df /dev/sda3\n" \804 "Filesystem 1K-blocks Used Available Use% Mounted on\n" \805 "/dev/sda3 8690864 8553540 137324 98% /\n" \806 "$ POSIXLY_CORRECT=sure df /dev/sda3\n" \807 "Filesystem 512B-blocks Used Available Use% Mounted on\n" \808 "/dev/sda3 17381728 17107080 274648 98% /\n" \809 "$ POSIXLY_CORRECT=yep df -P /dev/sda3\n" \810 "Filesystem 512-blocks Used Available Capacity Mounted on\n" \811 "/dev/sda3 17381728 17107080 274648 98% /\n"812 813 #define dhcprelay_trivial_usage \814 "CLIENT_IFACE[,CLIENT_IFACE2]... SERVER_IFACE [SERVER_IP]"815 #define dhcprelay_full_usage "\n\n" \816 "Relay DHCP requests between clients and server" \817 818 #define diff_trivial_usage \819 "[-abBdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] FILE1 FILE2"820 #define diff_full_usage "\n\n" \821 "Compare files line by line and output the differences between them.\n" \822 "This implementation supports unified diffs only.\n" \823 "\nOptions:" \824 "\n -a Treat all files as text" \825 "\n -b Ignore changes in the amount of whitespace" \826 "\n -B Ignore changes whose lines are all blank" \827 "\n -d Try hard to find a smaller set of changes" \828 "\n -i Ignore case differences" \829 "\n -L Use LABEL instead of the filename in the unified header" \830 "\n -N Treat absent files as empty" \831 "\n -q Output only whether files differ" \832 "\n -r Recurse" \833 "\n -S Start with FILE when comparing directories" \834 "\n -T Make tabs line up by prefixing a tab when necessary" \835 "\n -s Report when two files are the same" \836 "\n -t Expand tabs to spaces in output" \837 "\n -U Output LINES lines of context" \838 "\n -w Ignore all whitespace" \839 840 #define dirname_trivial_usage \841 "FILENAME"842 #define dirname_full_usage "\n\n" \843 "Strip non-directory suffix from FILENAME"844 #define dirname_example_usage \845 "$ dirname /tmp/foo\n" \846 "/tmp\n" \847 "$ dirname /tmp/foo/\n" \848 "/tmp\n"849 850 #define dmesg_trivial_usage \851 "[-c] [-n LEVEL] [-s SIZE]"852 #define dmesg_full_usage "\n\n" \853 "Print or control the kernel ring buffer\n" \854 "\nOptions:" \855 "\n -c Clear ring buffer after printing" \856 "\n -n LEVEL Set console logging level" \857 "\n -s SIZE Buffer size" \858 859 #define dnsd_trivial_usage \860 "[-dvs] [-c CONFFILE] [-t TTL_SEC] [-p PORT] [-i ADDR]"861 #define dnsd_full_usage "\n\n" \862 "Small static DNS server daemon\n" \863 "\nOptions:" \864 "\n -c FILE Config file" \865 "\n -t SEC TTL" \866 "\n -p PORT Listen on PORT" \867 "\n -i ADDR Listen on ADDR" \868 "\n -d Daemonize" \869 "\n -v Verbose" \870 "\n -s Send successful replies only. Use this if you want" \871 "\n to use /etc/resolv.conf with two nameserver lines:" \872 "\n nameserver DNSD_SERVER" \873 "\n nameserver NORNAL_DNS_SERVER" \874 875 #define dos2unix_trivial_usage \876 "[-ud] [FILE]"877 #define dos2unix_full_usage "\n\n" \878 "Convert FILE in-place from DOS to Unix format.\n" \879 "When no file is given, use stdin/stdout.\n" \880 "\nOptions:" \881 "\n -u dos2unix" \882 "\n -d unix2dos" \883 884 #define unix2dos_trivial_usage \885 "[-ud] [FILE]"886 #define unix2dos_full_usage "\n\n" \887 "Convert FILE in-place from Unix to DOS format.\n" \888 "When no file is given, use stdin/stdout.\n" \889 "\nOptions:" \890 "\n -u dos2unix" \891 "\n -d unix2dos" \892 893 #define dpkg_trivial_usage \894 "[-ilCPru] [-F OPT] PACKAGE"895 #define dpkg_full_usage "\n\n" \896 "Install, remove and manage Debian packages\n" \897 "\nOptions:" \898 IF_LONG_OPTS( \899 "\n -i,--install Install the package" \900 "\n -l,--list List of installed packages" \901 "\n --configure Configure an unpackaged package" \902 "\n -P,--purge Purge all files of a package" \903 "\n -r,--remove Remove all but the configuration files for a package" \904 "\n --unpack Unpack a package, but don't configure it" \905 "\n --force-depends Ignore dependency problems" \906 "\n --force-confnew Overwrite existing config files when installing" \907 "\n --force-confold Keep old config files when installing" \908 ) \909 IF_NOT_LONG_OPTS( \910 "\n -i Install the package" \911 "\n -l List of installed packages" \912 "\n -C Configure an unpackaged package" \913 "\n -P Purge all files of a package" \914 "\n -r Remove all but the configuration files for a package" \915 "\n -u Unpack a package, but don't configure it" \916 "\n -F depends Ignore dependency problems" \917 "\n -F confnew Overwrite existing config files when installing" \918 "\n -F confold Keep old config files when installing" \919 )920 921 #define dpkg_deb_trivial_usage \922 "[-cefxX] FILE [argument]"923 #define dpkg_deb_full_usage "\n\n" \924 "Perform actions on Debian packages (.debs)\n" \925 "\nOptions:" \926 "\n -c List contents of filesystem tree" \927 "\n -e Extract control files to [argument] directory" \928 "\n -f Display control field name starting with [argument]" \929 "\n -x Extract packages filesystem tree to directory" \930 "\n -X Verbose extract" \931 932 #define dpkg_deb_example_usage \933 "$ dpkg-deb -X ./busybox_0.48-1_i386.deb /tmp\n"934 935 #define du_trivial_usage \936 "[-aHLdclsx" IF_FEATURE_HUMAN_READABLE("hm") "k] [FILE]..."937 #define du_full_usage "\n\n" \938 "Summarize disk space used for each FILE and/or directory.\n" \939 "Disk space is printed in units of " \940 IF_FEATURE_DU_DEFAULT_BLOCKSIZE_1K("1024") \941 IF_NOT_FEATURE_DU_DEFAULT_BLOCKSIZE_1K("512") \942 " bytes.\n" \943 "\nOptions:" \944 "\n -a Show file sizes too" \945 "\n -L Follow all symlinks" \946 "\n -H Follow symlinks on command line" \947 "\n -d N Limit output to directories (and files with -a) of depth < N" \948 "\n -c Show grand total" \949 "\n -l Count sizes many times if hard linked" \950 "\n -s Display only a total for each argument" \951 "\n -x Skip directories on different filesystems" \952 IF_FEATURE_HUMAN_READABLE( \953 "\n -h Sizes in human readable format (e.g., 1K 243M 2G )" \954 "\n -m Sizes in megabytes" \955 ) \956 "\n -k Sizes in kilobytes" \957 IF_FEATURE_DU_DEFAULT_BLOCKSIZE_1K(" (default)") \958 959 #define du_example_usage \960 "$ du\n" \961 "16 ./CVS\n" \962 "12 ./kernel-patches/CVS\n" \963 "80 ./kernel-patches\n" \964 "12 ./tests/CVS\n" \965 "36 ./tests\n" \966 "12 ./scripts/CVS\n" \967 "16 ./scripts\n" \968 "12 ./docs/CVS\n" \969 "104 ./docs\n" \970 "2417 .\n"971 972 #define dumpkmap_trivial_usage \973 "> keymap"974 #define dumpkmap_full_usage "\n\n" \975 "Print a binary keyboard translation table to stdout"976 #define dumpkmap_example_usage \977 "$ dumpkmap > keymap\n"978 979 #define dumpleases_trivial_usage \980 "[-r|-a] [-f LEASEFILE]"981 #define dumpleases_full_usage "\n\n" \982 "Display DHCP leases granted by udhcpd\n" \983 "\nOptions:" \984 IF_LONG_OPTS( \985 "\n -f,--file=FILE Lease file" \986 "\n -r,--remaining Show remaining time" \987 "\n -a,--absolute Show expiration time" \988 ) \989 IF_NOT_LONG_OPTS( \990 "\n -f FILE Lease file" \991 "\n -r Show remaining time" \992 "\n -a Show expiration time" \993 )994 995 /*996 #define e2fsck_trivial_usage \997 "[-panyrcdfvstDFSV] [-b superblock] [-B blocksize] " \998 "[-I inode_buffer_blocks] [-P process_inode_size] " \999 "[-l|-L bad_blocks_file] [-C fd] [-j external_journal] " \1000 "[-E extended-options] device"1001 #define e2fsck_full_usage "\n\n" \1002 "Check ext2/ext3 file system\n" \1003 "\nOptions:" \1004 "\n -p Automatic repair (no questions)" \1005 "\n -n Make no changes to the filesystem" \1006 "\n -y Assume 'yes' to all questions" \1007 "\n -c Check for bad blocks and add them to the badblock list" \1008 "\n -f Force checking even if filesystem is marked clean" \1009 "\n -v Verbose" \1010 "\n -b superblock Use alternative superblock" \1011 "\n -B blocksize Force blocksize when looking for superblock" \1012 "\n -j journal Set location of the external journal" \1013 "\n -l file Add to badblocks list" \1014 "\n -L file Set badblocks list" \1015 */1016 1017 #define echo_trivial_usage \1018 IF_FEATURE_FANCY_ECHO("[-neE] ") "[ARG]..."1019 #define echo_full_usage "\n\n" \1020 "Print the specified ARGs to stdout" \1021 IF_FEATURE_FANCY_ECHO( "\n" \1022 "\nOptions:" \1023 "\n -n Suppress trailing newline" \1024 "\n -e Interpret backslash escapes (i.e., \\t=tab)" \1025 "\n -E Don't interpret backslash escapes (default)" \1026 )1027 #define echo_example_usage \1028 "$ echo \"Erik is cool\"\n" \1029 "Erik is cool\n" \1030 IF_FEATURE_FANCY_ECHO("$ echo -e \"Erik\\nis\\ncool\"\n" \1031 "Erik\n" \1032 "is\n" \1033 "cool\n" \1034 "$ echo \"Erik\\nis\\ncool\"\n" \1035 "Erik\\nis\\ncool\n")1036 1037 #define eject_trivial_usage \1038 "[-t] [-T] [DEVICE]"1039 #define eject_full_usage "\n\n" \1040 "Eject DEVICE or default /dev/cdrom\n" \1041 "\nOptions:" \1042 IF_FEATURE_EJECT_SCSI( \1043 "\n -s SCSI device" \1044 ) \1045 "\n -t Close tray" \1046 "\n -T Open/close tray (toggle)" \1047 1048 #define ed_trivial_usage ""1049 #define ed_full_usage ""1050 1051 #define env_trivial_usage \1052 "[-iu] [-] [name=value]... [PROG ARGS]"1053 #define env_full_usage "\n\n" \1054 "Print the current environment or run PROG after setting up\n" \1055 "the specified environment\n" \1056 "\nOptions:" \1057 "\n -, -i Start with an empty environment" \1058 "\n -u Remove variable from the environment" \1059 1060 #define ether_wake_trivial_usage \1061 "[-b] [-i iface] [-p aa:bb:cc:dd[:ee:ff]] MAC"1062 #define ether_wake_full_usage "\n\n" \1063 "Send a magic packet to wake up sleeping machines.\n" \1064 "MAC must be a station address (00:11:22:33:44:55) or\n" \1065 "a hostname with a known 'ethers' entry.\n" \1066 "\nOptions:" \1067 "\n -b Send wake-up packet to the broadcast address" \1068 "\n -i iface Interface to use (default eth0)" \1069 "\n -p pass Append four or six byte password PW to the packet" \1070 1071 #define expand_trivial_usage \1072 "[-i] [-t N] [FILE]..."1073 #define expand_full_usage "\n\n" \1074 "Convert tabs to spaces, writing to stdout\n" \1075 "\nOptions:" \1076 IF_FEATURE_EXPAND_LONG_OPTIONS( \1077 "\n -i,--initial Don't convert tabs after non blanks" \1078 "\n -t,--tabs=N Tabstops every N chars" \1079 ) \1080 IF_NOT_FEATURE_EXPAND_LONG_OPTIONS( \1081 "\n -i Don't convert tabs after non blanks" \1082 "\n -t Tabstops every N chars" \1083 )1084 1085 #define expr_trivial_usage \1086 "EXPRESSION"1087 #define expr_full_usage "\n\n" \1088 "Print the value of EXPRESSION to stdout\n" \1089 "\n" \1090 "EXPRESSION may be:\n" \1091 " ARG1 | ARG2 ARG1 if it is neither null nor 0, otherwise ARG2\n" \1092 " ARG1 & ARG2 ARG1 if neither argument is null or 0, otherwise 0\n" \1093 " ARG1 < ARG2 1 if ARG1 is less than ARG2, else 0. Similarly:\n" \1094 " ARG1 <= ARG2\n" \1095 " ARG1 = ARG2\n" \1096 " ARG1 != ARG2\n" \1097 " ARG1 >= ARG2\n" \1098 " ARG1 > ARG2\n" \1099 " ARG1 + ARG2 Sum of ARG1 and ARG2. Similarly:\n" \1100 " ARG1 - ARG2\n" \1101 " ARG1 * ARG2\n" \1102 " ARG1 / ARG2\n" \1103 " ARG1 % ARG2\n" \1104 " STRING : REGEXP Anchored pattern match of REGEXP in STRING\n" \1105 " match STRING REGEXP Same as STRING : REGEXP\n" \1106 " substr STRING POS LENGTH Substring of STRING, POS counted from 1\n" \1107 " index STRING CHARS Index in STRING where any CHARS is found, or 0\n" \1108 " length STRING Length of STRING\n" \1109 " quote TOKEN Interpret TOKEN as a string, even if\n" \1110 " it is a keyword like 'match' or an\n" \1111 " operator like '/'\n" \1112 " (EXPRESSION) Value of EXPRESSION\n" \1113 "\n" \1114 "Beware that many operators need to be escaped or quoted for shells.\n" \1115 "Comparisons are arithmetic if both ARGs are numbers, else\n" \1116 "lexicographical. Pattern matches return the string matched between\n" \1117 "\\( and \\) or null; if \\( and \\) are not used, they return the number\n" \1118 "of characters matched or 0."1119 1120 #define fakeidentd_trivial_usage \1121 "[-fiw] [-b ADDR] [STRING]"1122 #define fakeidentd_full_usage "\n\n" \1123 "Provide fake ident (auth) service\n" \1124 "\nOptions:" \1125 "\n -f Run in foreground" \1126 "\n -i Inetd mode" \1127 "\n -w Inetd 'wait' mode" \1128 "\n -b ADDR Bind to specified address" \1129 "\n STRING Ident answer string (default: nobody)" \1130 1131 #define false_trivial_usage \1132 ""1133 #define false_full_usage "\n\n" \1134 "Return an exit code of FALSE (1)"1135 1136 #define false_example_usage \1137 "$ false\n" \1138 "$ echo $?\n" \1139 "1\n"1140 1141 #define fbsplash_trivial_usage \1142 "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]"1143 #define fbsplash_full_usage "\n\n" \1144 "Options:" \1145 "\n -s Image" \1146 "\n -c Hide cursor" \1147 "\n -d Framebuffer device (default /dev/fb0)" \1148 "\n -i Config file (var=value):" \1149 "\n BAR_LEFT,BAR_TOP,BAR_WIDTH,BAR_HEIGHT" \1150 "\n BAR_R,BAR_G,BAR_B" \1151 "\n -f Control pipe (else exit after drawing image)" \1152 "\n commands: 'NN' (% for progress bar) or 'exit'" \1153 1154 #define fbset_trivial_usage \1155 "[OPTIONS] [MODE]"1156 #define fbset_full_usage "\n\n" \1157 "Show and modify frame buffer settings"1158 1159 #define fbset_example_usage \1160 "$ fbset\n" \1161 "mode \"1024x768-76\"\n" \1162 " # D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz\n" \1163 " geometry 1024 768 1024 768 16\n" \1164 " timings 12714 128 32 16 4 128 4\n" \1165 " accel false\n" \1166 " rgba 5/11,6/5,5/0,0/0\n" \1167 "endmode\n"1168 1169 #define fdflush_trivial_usage \1170 "DEVICE"1171 #define fdflush_full_usage "\n\n" \1172 "Force floppy disk drive to detect disk change"1173 1174 #define fdformat_trivial_usage \1175 "[-n] DEVICE"1176 #define fdformat_full_usage "\n\n" \1177 "Format floppy disk\n" \1178 "\nOptions:" \1179 "\n -n Don't verify after format" \1180 1181 /* Looks like someone forgot to add this to config system */1182 #ifndef ENABLE_FEATURE_FDISK_BLKSIZE1183 # define ENABLE_FEATURE_FDISK_BLKSIZE 01184 # define IF_FEATURE_FDISK_BLKSIZE(a)1185 22 #endif 1186 1187 #define fdisk_trivial_usage \1188 "[-ul" IF_FEATURE_FDISK_BLKSIZE("s") "] " \1189 "[-C CYLINDERS] [-H HEADS] [-S SECTORS] [-b SSZ] DISK"1190 #define fdisk_full_usage "\n\n" \1191 "Change partition table\n" \1192 "\nOptions:" \1193 "\n -u Start and End are in sectors (instead of cylinders)" \1194 "\n -l Show partition table for each DISK, then exit" \1195 IF_FEATURE_FDISK_BLKSIZE( \1196 "\n -s Show partition sizes in kb for each DISK, then exit" \1197 ) \1198 "\n -b 2048 (for certain MO disks) use 2048-byte sectors" \1199 "\n -C CYLINDERS Set number of cylinders/heads/sectors" \1200 "\n -H HEADS" \1201 "\n -S SECTORS" \1202 1203 #define fgconsole_trivial_usage \1204 ""1205 #define fgconsole_full_usage "\n\n" \1206 "Get active console"1207 1208 #define findfs_trivial_usage \1209 "LABEL=label or UUID=uuid"1210 #define findfs_full_usage "\n\n" \1211 "Find a filesystem device based on a label or UUID"1212 #define findfs_example_usage \1213 "$ findfs LABEL=MyDevice"1214 1215 #define flash_lock_trivial_usage \1216 "MTD_DEVICE OFFSET SECTORS"1217 #define flash_lock_full_usage "\n\n" \1218 "Lock part or all of an MTD device. If SECTORS is -1, then all sectors\n" \1219 "will be locked, regardless of the value of OFFSET"1220 1221 #define flash_unlock_trivial_usage \1222 "MTD_DEVICE"1223 #define flash_unlock_full_usage "\n\n" \1224 "Unlock an MTD device"1225 1226 #define flash_eraseall_trivial_usage \1227 "[-jq] MTD_DEVICE"1228 #define flash_eraseall_full_usage "\n\n" \1229 "Erase an MTD device\n" \1230 "\nOptions:" \1231 "\n -j Format the device for jffs2" \1232 "\n -q Don't display progress messages" \1233 1234 #define flashcp_trivial_usage \1235 "-v FILE MTD_DEVICE"1236 #define flashcp_full_usage "\n\n" \1237 "Copy an image to MTD device\n" \1238 "\nOptions:" \1239 "\n -v Verbose" \1240 1241 #define flock_trivial_usage \1242 "[-sxun] FD|{FILE [-c] PROG ARGS}"1243 #define flock_full_usage "\n\n" \1244 "[Un]lock file descriptor, or lock FILE, run PROG\n" \1245 "\nOptions:" \1246 "\n -s Shared lock" \1247 "\n -x Exclusive lock (default)" \1248 "\n -u Unlock FD" \1249 "\n -n Fail rather than wait" \1250 1251 #define fold_trivial_usage \1252 "[-bs] [-w WIDTH] [FILE]..."1253 #define fold_full_usage "\n\n" \1254 "Wrap input lines in each FILE (or stdin), writing to stdout\n" \1255 "\nOptions:" \1256 "\n -b Count bytes rather than columns" \1257 "\n -s Break at spaces" \1258 "\n -w Use WIDTH columns instead of 80" \1259 1260 #define free_trivial_usage \1261 "" IF_DESKTOP("[-b/k/m/g]")1262 #define free_full_usage "\n\n" \1263 "Display the amount of free and used system memory"1264 #define free_example_usage \1265 "$ free\n" \1266 " total used free shared buffers\n" \1267 " Mem: 257628 248724 8904 59644 93124\n" \1268 " Swap: 128516 8404 120112\n" \1269 "Total: 386144 257128 129016\n" \1270 1271 #define freeramdisk_trivial_usage \1272 "DEVICE"1273 #define freeramdisk_full_usage "\n\n" \1274 "Free all memory used by the specified ramdisk"1275 #define freeramdisk_example_usage \1276 "$ freeramdisk /dev/ram2\n"1277 1278 #define fsck_trivial_usage \1279 "[-ANPRTV] [-C FD] [-t FSTYPE] [FS_OPTS] [BLOCKDEV]..."1280 #define fsck_full_usage "\n\n" \1281 "Check and repair filesystems\n" \1282 "\nOptions:" \1283 "\n -A Walk /etc/fstab and check all filesystems" \1284 "\n -N Don't execute, just show what would be done" \1285 "\n -P With -A, check filesystems in parallel" \1286 "\n -R With -A, skip the root filesystem" \1287 "\n -T Don't show title on startup" \1288 "\n -V Verbose" \1289 "\n -C n Write status information to specified filedescriptor" \1290 "\n -t TYPE List of filesystem types to check" \1291 1292 #define fsck_minix_trivial_usage \1293 "[-larvsmf] BLOCKDEV"1294 #define fsck_minix_full_usage "\n\n" \1295 "Check MINIX filesystem\n" \1296 "\nOptions:" \1297 "\n -l List all filenames" \1298 "\n -r Perform interactive repairs" \1299 "\n -a Perform automatic repairs" \1300 "\n -v Verbose" \1301 "\n -s Output superblock information" \1302 "\n -m Show \"mode not cleared\" warnings" \1303 "\n -f Force file system check" \1304 1305 #define ftpd_trivial_usage \1306 "[-wvS] [-t N] [-T N] [DIR]"1307 #define ftpd_full_usage "\n\n" \1308 "Anonymous FTP server\n" \1309 "\n" \1310 "ftpd should be used as an inetd service.\n" \1311 "ftpd's line for inetd.conf:\n" \1312 " 21 stream tcp nowait root ftpd ftpd /files/to/serve\n" \1313 "It also can be ran from tcpsvd:\n" \1314 " tcpsvd -vE 0.0.0.0 21 ftpd /files/to/serve\n" \1315 "\nOptions:" \1316 "\n -w Allow upload" \1317 "\n -v Log to stderr" \1318 "\n -S Log to syslog" \1319 "\n -t,-T Idle and absolute timeouts" \1320 "\n DIR Change root to this directory" \1321 1322 #define ftpget_trivial_usage \1323 "[OPTIONS] HOST [LOCAL_FILE] REMOTE_FILE"1324 #define ftpget_full_usage "\n\n" \1325 "Retrieve a remote file via FTP\n" \1326 "\nOptions:" \1327 IF_FEATURE_FTPGETPUT_LONG_OPTIONS( \1328 "\n -c,--continue Continue previous transfer" \1329 "\n -v,--verbose Verbose" \1330 "\n -u,--username Username" \1331 "\n -p,--password Password" \1332 "\n -P,--port Port number" \1333 ) \1334 IF_NOT_FEATURE_FTPGETPUT_LONG_OPTIONS( \1335 "\n -c Continue previous transfer" \1336 "\n -v Verbose" \1337 "\n -u Username" \1338 "\n -p Password" \1339 "\n -P Port number" \1340 )1341 1342 #define ftpput_trivial_usage \1343 "[OPTIONS] HOST [REMOTE_FILE] LOCAL_FILE"1344 #define ftpput_full_usage "\n\n" \1345 "Store a local file on a remote machine via FTP\n" \1346 "\nOptions:" \1347 IF_FEATURE_FTPGETPUT_LONG_OPTIONS( \1348 "\n -v,--verbose Verbose" \1349 "\n -u,--username Username" \1350 "\n -p,--password Password" \1351 "\n -P,--port Port number" \1352 ) \1353 IF_NOT_FEATURE_FTPGETPUT_LONG_OPTIONS( \1354 "\n -v Verbose" \1355 "\n -u Username" \1356 "\n -p Password" \1357 "\n -P Port number" \1358 )1359 1360 #define fuser_trivial_usage \1361 "[OPTIONS] FILE or PORT/PROTO"1362 #define fuser_full_usage "\n\n" \1363 "Find processes which use FILEs or PORTs\n" \1364 "\nOptions:" \1365 "\n -m Find processes which use same fs as FILEs" \1366 "\n -4,-6 Search only IPv4/IPv6 space" \1367 "\n -s Don't display PIDs" \1368 "\n -k Kill found processes" \1369 "\n -SIGNAL Signal to send (default: KILL)" \1370 1371 #define getenforce_trivial_usage NOUSAGE_STR1372 #define getenforce_full_usage ""1373 1374 #define getopt_trivial_usage \1375 "[OPTIONS]"1376 #define getopt_full_usage "\n\n" \1377 "Options:" \1378 IF_LONG_OPTS( \1379 "\n -a,--alternative Allow long options starting with single -" \1380 "\n -l,--longoptions=longopts Long options to be recognized" \1381 "\n -n,--name=progname The name under which errors are reported" \1382 "\n -o,--options=optstring Short options to be recognized" \1383 "\n -q,--quiet Disable error reporting by getopt(3)" \1384 "\n -Q,--quiet-output No normal output" \1385 "\n -s,--shell=shell Set shell quoting conventions" \1386 "\n -T,--test Test for getopt(1) version" \1387 "\n -u,--unquoted Don't quote the output" \1388 ) \1389 IF_NOT_LONG_OPTS( \1390 "\n -a Allow long options starting with single -" \1391 "\n -l longopts Long options to be recognized" \1392 "\n -n progname The name under which errors are reported" \1393 "\n -o optstring Short options to be recognized" \1394 "\n -q Disable error reporting by getopt(3)" \1395 "\n -Q No normal output" \1396 "\n -s shell Set shell quoting conventions" \1397 "\n -T Test for getopt(1) version" \1398 "\n -u Don't quote the output" \1399 )1400 #define getopt_example_usage \1401 "$ cat getopt.test\n" \1402 "#!/bin/sh\n" \1403 "GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \\\n" \1404 " -n 'example.busybox' -- \"$@\"`\n" \1405 "if [ $? != 0 ]; then exit 1; fi\n" \1406 "eval set -- \"$GETOPT\"\n" \1407 "while true; do\n" \1408 " case $1 in\n" \1409 " -a|--a-long) echo \"Option a\"; shift;;\n" \1410 " -b|--b-long) echo \"Option b, argument '$2'\"; shift 2;;\n" \1411 " -c|--c-long)\n" \1412 " case \"$2\" in\n" \1413 " \"\") echo \"Option c, no argument\"; shift 2;;\n" \1414 " *) echo \"Option c, argument '$2'\"; shift 2;;\n" \1415 " esac;;\n" \1416 " --) shift; break;;\n" \1417 " *) echo \"Internal error!\"; exit 1;;\n" \1418 " esac\n" \1419 "done\n"1420 1421 #define getsebool_trivial_usage \1422 "-a or getsebool boolean..."1423 #define getsebool_full_usage "\n\n" \1424 " -a Show all selinux booleans"1425 1426 #define getty_trivial_usage \1427 "[OPTIONS] BAUD_RATE TTY [TERMTYPE]"1428 #define getty_full_usage "\n\n" \1429 "Open a tty, prompt for a login name, then invoke /bin/login\n" \1430 "\nOptions:" \1431 "\n -h Enable hardware (RTS/CTS) flow control" \1432 "\n -i Don't display /etc/issue before running login" \1433 "\n -L Local line, don't do carrier detect" \1434 "\n -m Get baud rate from modem's CONNECT status message" \1435 "\n -w Wait for a CR or LF before sending /etc/issue" \1436 "\n -n Don't prompt the user for a login name" \1437 "\n -f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue" \1438 "\n -l LOGIN Invoke LOGIN instead of /bin/login" \1439 "\n -t SEC Terminate after SEC if no username is read" \1440 "\n -I INITSTR Send INITSTR before anything else" \1441 "\n -H HOST Log HOST into the utmp file as the hostname" \1442 1443 #define gunzip_trivial_usage \1444 "[-cft] [FILE]..."1445 #define gunzip_full_usage "\n\n" \1446 "Decompress FILEs (or stdin)\n" \1447 "\nOptions:" \1448 "\n -c Write to stdout" \1449 "\n -f Force" \1450 "\n -t Test file integrity" \1451 1452 #define gunzip_example_usage \1453 "$ ls -la /tmp/BusyBox*\n" \1454 "-rw-rw-r-- 1 andersen andersen 557009 Apr 11 10:55 /tmp/BusyBox-0.43.tar.gz\n" \1455 "$ gunzip /tmp/BusyBox-0.43.tar.gz\n" \1456 "$ ls -la /tmp/BusyBox*\n" \1457 "-rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar\n"1458 1459 #define gzip_trivial_usage \1460 "[-cfd] [FILE]..."1461 #define gzip_full_usage "\n\n" \1462 "Compress FILEs (or stdin)\n" \1463 "\nOptions:" \1464 "\n -d Decompress" \1465 "\n -c Write to stdout" \1466 "\n -f Force" \1467 1468 #define gzip_example_usage \1469 "$ ls -la /tmp/busybox*\n" \1470 "-rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/busybox.tar\n" \1471 "$ gzip /tmp/busybox.tar\n" \1472 "$ ls -la /tmp/busybox*\n" \1473 "-rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/busybox.tar.gz\n"1474 1475 #define hdparm_trivial_usage \1476 "[OPTIONS] [DEVICE]"1477 #define hdparm_full_usage "\n\n" \1478 "Options:" \1479 "\n -a Get/set fs readahead" \1480 "\n -A Set drive read-lookahead flag (0/1)" \1481 "\n -b Get/set bus state (0 == off, 1 == on, 2 == tristate)" \1482 "\n -B Set Advanced Power Management setting (1-255)" \1483 "\n -c Get/set IDE 32-bit IO setting" \1484 "\n -C Check IDE power mode status" \1485 IF_FEATURE_HDPARM_HDIO_GETSET_DMA( \1486 "\n -d Get/set using_dma flag") \1487 "\n -D Enable/disable drive defect-mgmt" \1488 "\n -f Flush buffer cache for device on exit" \1489 "\n -g Display drive geometry" \1490 "\n -h Display terse usage information" \1491 IF_FEATURE_HDPARM_GET_IDENTITY( \1492 "\n -i Display drive identification") \1493 IF_FEATURE_HDPARM_GET_IDENTITY( \1494 "\n -I Detailed/current information directly from drive") \1495 "\n -k Get/set keep_settings_over_reset flag (0/1)" \1496 "\n -K Set drive keep_features_over_reset flag (0/1)" \1497 "\n -L Set drive doorlock (0/1) (removable harddisks only)" \1498 "\n -m Get/set multiple sector count" \1499 "\n -n Get/set ignore-write-errors flag (0/1)" \1500 "\n -p Set PIO mode on IDE interface chipset (0,1,2,3,4,...)" \1501 "\n -P Set drive prefetch count" \1502 /* "\n -q Change next setting quietly" - not supported ib bbox */ \1503 "\n -Q Get/set DMA tagged-queuing depth (if supported)" \1504 "\n -r Get/set readonly flag (DANGEROUS to set)" \1505 IF_FEATURE_HDPARM_HDIO_SCAN_HWIF( \1506 "\n -R Register an IDE interface (DANGEROUS)") \1507 "\n -S Set standby (spindown) timeout" \1508 "\n -t Perform device read timings" \1509 "\n -T Perform cache read timings" \1510 "\n -u Get/set unmaskirq flag (0/1)" \1511 IF_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF( \1512 "\n -U Unregister an IDE interface (DANGEROUS)") \1513 "\n -v Defaults; same as -mcudkrag for IDE drives" \1514 "\n -V Display program version and exit immediately" \1515 IF_FEATURE_HDPARM_HDIO_DRIVE_RESET( \1516 "\n -w Perform device reset (DANGEROUS)") \1517 "\n -W Set drive write-caching flag (0/1) (DANGEROUS)" \1518 IF_FEATURE_HDPARM_HDIO_TRISTATE_HWIF( \1519 "\n -x Tristate device for hotswap (0/1) (DANGEROUS)") \1520 "\n -X Set IDE xfer mode (DANGEROUS)" \1521 "\n -y Put IDE drive in standby mode" \1522 "\n -Y Put IDE drive to sleep" \1523 "\n -Z Disable Seagate auto-powersaving mode" \1524 "\n -z Reread partition table" \1525 1526 #define head_trivial_usage \1527 "[OPTIONS] [FILE]..."1528 #define head_full_usage "\n\n" \1529 "Print first 10 lines of each FILE (or stdin) to stdout.\n" \1530 "With more than one FILE, precede each with a filename header.\n" \1531 "\nOptions:" \1532 "\n -n N[kbm] Print first N lines" \1533 IF_FEATURE_FANCY_HEAD( \1534 "\n -c N[kbm] Print first N bytes" \1535 "\n -q Never print headers" \1536 "\n -v Always print headers" \1537 ) \1538 "\n" \1539 "\nN may be suffixed by k (x1024), b (x512), or m (x1024^2)." \1540 1541 #define head_example_usage \1542 "$ head -n 2 /etc/passwd\n" \1543 "root:x:0:0:root:/root:/bin/bash\n" \1544 "daemon:x:1:1:daemon:/usr/sbin:/bin/sh\n"1545 1546 #define tail_trivial_usage \1547 "[OPTIONS] [FILE]..."1548 #define tail_full_usage "\n\n" \1549 "Print last 10 lines of each FILE (or stdin) to stdout.\n" \1550 "With more than one FILE, precede each with a filename header.\n" \1551 "\nOptions:" \1552 "\n -f Print data as file grows" \1553 IF_FEATURE_FANCY_TAIL( \1554 "\n -s SECONDS Wait SECONDS between reads with -f" \1555 ) \1556 "\n -n N[kbm] Print last N lines" \1557 IF_FEATURE_FANCY_TAIL( \1558 "\n -c N[kbm] Print last N bytes" \1559 "\n -q Never print headers" \1560 "\n -v Always print headers" \1561 "\n" \1562 "\nN may be suffixed by k (x1024), b (x512), or m (x1024^2)." \1563 "\nIf N starts with a '+', output begins with the Nth item from the start" \1564 "\nof each file, not from the end." \1565 ) \1566 1567 #define tail_example_usage \1568 "$ tail -n 1 /etc/resolv.conf\n" \1569 "nameserver 10.0.0.1\n"1570 1571 #define hexdump_trivial_usage \1572 "[-bcCdefnosvx" IF_FEATURE_HEXDUMP_REVERSE("R") "] [FILE]..."1573 #define hexdump_full_usage "\n\n" \1574 "Display FILEs (or stdin) in a user specified format\n" \1575 "\nOptions:" \1576 "\n -b One-byte octal display" \1577 "\n -c One-byte character display" \1578 "\n -C Canonical hex+ASCII, 16 bytes per line" \1579 "\n -d Two-byte decimal display" \1580 "\n -e FORMAT STRING" \1581 "\n -f FORMAT FILE" \1582 "\n -n LENGTH Interpret only LENGTH bytes of input" \1583 "\n -o Two-byte octal display" \1584 "\n -s OFFSET Skip OFFSET bytes" \1585 "\n -v Display all input data" \1586 "\n -x Two-byte hexadecimal display" \1587 IF_FEATURE_HEXDUMP_REVERSE( \1588 "\n -R Reverse of 'hexdump -Cv'") \1589 1590 #define hd_trivial_usage \1591 "FILE..."1592 #define hd_full_usage "\n\n" \1593 "hd is an alias for hexdump -C"1594 1595 #define hostid_trivial_usage \1596 ""1597 #define hostid_full_usage "\n\n" \1598 "Print out a unique 32-bit identifier for the machine"1599 1600 #define hostname_trivial_usage \1601 "[OPTIONS] [HOSTNAME | -F FILE]"1602 #define hostname_full_usage "\n\n" \1603 "Get or set hostname or DNS domain name\n" \1604 "\nOptions:" \1605 "\n -s Short" \1606 "\n -i Addresses for the hostname" \1607 "\n -d DNS domain name" \1608 "\n -f Fully qualified domain name" \1609 "\n -F FILE Use FILE's content as hostname" \1610 1611 #define hostname_example_usage \1612 "$ hostname\n" \1613 "sage\n"1614 1615 #define dnsdomainname_trivial_usage NOUSAGE_STR1616 #define dnsdomainname_full_usage ""1617 1618 #define httpd_trivial_usage \1619 "[-ifv[v]]" \1620 " [-c CONFFILE]" \1621 " [-p [IP:]PORT]" \1622 IF_FEATURE_HTTPD_SETUID(" [-u USER[:GRP]]") \1623 IF_FEATURE_HTTPD_BASIC_AUTH(" [-r REALM]") \1624 " [-h HOME]\n" \1625 "or httpd -d/-e" IF_FEATURE_HTTPD_AUTH_MD5("/-m") " STRING"1626 #define httpd_full_usage "\n\n" \1627 "Listen for incoming HTTP requests\n" \1628 "\nOptions:" \1629 "\n -i Inetd mode" \1630 "\n -f Don't daemonize" \1631 "\n -v[v] Verbose" \1632 "\n -p [IP:]PORT Bind to IP:PORT (default *:80)" \1633 IF_FEATURE_HTTPD_SETUID( \1634 "\n -u USER[:GRP] Set uid/gid after binding to port") \1635 IF_FEATURE_HTTPD_BASIC_AUTH( \1636 "\n -r REALM Authentication Realm for Basic Authentication") \1637 "\n -h HOME Home directory (default .)" \1638 "\n -c FILE Configuration file (default {/etc,HOME}/httpd.conf)" \1639 IF_FEATURE_HTTPD_AUTH_MD5( \1640 "\n -m STRING MD5 crypt STRING") \1641 "\n -e STRING HTML encode STRING" \1642 "\n -d STRING URL decode STRING" \1643 1644 #define hwclock_trivial_usage \1645 IF_FEATURE_HWCLOCK_LONG_OPTIONS( \1646 "[-r|--show] [-s|--hctosys] [-w|--systohc]" \1647 " [-l|--localtime] [-u|--utc]" \1648 " [-f FILE]" \1649 ) \1650 IF_NOT_FEATURE_HWCLOCK_LONG_OPTIONS( \1651 "[-r] [-s] [-w] [-l] [-u] [-f FILE]" \1652 )1653 #define hwclock_full_usage "\n\n" \1654 "Query and set hardware clock (RTC)\n" \1655 "\nOptions:" \1656 "\n -r Show hardware clock time" \1657 "\n -s Set system time from hardware clock" \1658 "\n -w Set hardware clock to system time" \1659 "\n -u Hardware clock is in UTC" \1660 "\n -l Hardware clock is in local time" \1661 "\n -f FILE Use specified device (e.g. /dev/rtc2)" \1662 1663 #define id_trivial_usage \1664 "[OPTIONS] [USER]"1665 #define id_full_usage "\n\n" \1666 "Print information about USER or the current user\n" \1667 "\nOptions:" \1668 IF_SELINUX( \1669 "\n -Z Security context" \1670 ) \1671 "\n -u User ID" \1672 "\n -g Group ID" \1673 "\n -G Supplementary group IDs" \1674 "\n -n Print names instead of numbers" \1675 "\n -r Print real ID instead of effective ID" \1676 1677 #define id_example_usage \1678 "$ id\n" \1679 "uid=1000(andersen) gid=1000(andersen)\n"1680 1681 #define ifconfig_trivial_usage \1682 IF_FEATURE_IFCONFIG_STATUS("[-a]") " interface [address]"1683 #define ifconfig_full_usage "\n\n" \1684 "Configure a network interface\n" \1685 "\nOptions:" \1686 "\n" \1687 IF_FEATURE_IPV6( \1688 " [add ADDRESS[/PREFIXLEN]]\n") \1689 IF_FEATURE_IPV6( \1690 " [del ADDRESS[/PREFIXLEN]]\n") \1691 " [[-]broadcast [ADDRESS]] [[-]pointopoint [ADDRESS]]\n" \1692 " [netmask ADDRESS] [dstaddr ADDRESS]\n" \1693 IF_FEATURE_IFCONFIG_SLIP( \1694 " [outfill NN] [keepalive NN]\n") \1695 " " IF_FEATURE_IFCONFIG_HW("[hw ether" IF_FEATURE_HWIB("|infiniband")" ADDRESS] ") "[metric NN] [mtu NN]\n" \1696 " [[-]trailers] [[-]arp] [[-]allmulti]\n" \1697 " [multicast] [[-]promisc] [txqueuelen NN] [[-]dynamic]\n" \1698 IF_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ( \1699 " [mem_start NN] [io_addr NN] [irq NN]\n") \1700 " [up|down] ..."1701 1702 #define ifenslave_trivial_usage \1703 "[-cdf] MASTER_IFACE SLAVE_IFACE..."1704 #define ifenslave_full_usage "\n\n" \1705 "Configure network interfaces for parallel routing\n" \1706 "\nOptions:" \1707 "\n -c,--change-active Change active slave" \1708 "\n -d,--detach Remove slave interface from bonding device" \1709 "\n -f,--force Force, even if interface is not Ethernet" \1710 /* "\n -r,--receive-slave Create a receive-only slave" */1711 1712 #define ifenslave_example_usage \1713 "To create a bond device, simply follow these three steps:\n" \1714 "- ensure that the required drivers are properly loaded:\n" \1715 " # modprobe bonding ; modprobe <3c59x|eepro100|pcnet32|tulip|...>\n" \1716 "- assign an IP address to the bond device:\n" \1717 " # ifconfig bond0 <addr> netmask <mask> broadcast <bcast>\n" \1718 "- attach all the interfaces you need to the bond device:\n" \1719 " # ifenslave bond0 eth0 eth1 eth2\n" \1720 " If bond0 didn't have a MAC address, it will take eth0's. Then, all\n" \1721 " interfaces attached AFTER this assignment will get the same MAC addr.\n\n" \1722 " To detach a dead interface without setting the bond device down:\n" \1723 " # ifenslave -d bond0 eth1\n\n" \1724 " To set the bond device down and automatically release all the slaves:\n" \1725 " # ifconfig bond0 down\n\n" \1726 " To change active slave:\n" \1727 " # ifenslave -c bond0 eth0\n" \1728 1729 #define ifplugd_trivial_usage \1730 "[OPTIONS]"1731 #define ifplugd_full_usage "\n\n" \1732 "Network interface plug detection daemon\n" \1733 "\nOptions:" \1734 "\n -n Don't daemonize" \1735 "\n -s Don't log to syslog" \1736 "\n -i IFACE Interface" \1737 "\n -f/-F Treat link detection error as link down/link up" \1738 "\n (otherwise exit on error)" \1739 "\n -a Don't up interface at each link probe" \1740 "\n -M Monitor creation/destruction of interface" \1741 "\n (otherwise it must exist)" \1742 "\n -r PROG Script to run" \1743 "\n -x ARG Extra argument for script" \1744 "\n -I Don't exit on nonzero exit code from script" \1745 "\n -p Don't run script on daemon startup" \1746 "\n -q Don't run script on daemon quit" \1747 "\n -l Run script on startup even if no cable is detected" \1748 "\n -t SECS Poll time in seconds" \1749 "\n -u SECS Delay before running script after link up" \1750 "\n -d SECS Delay after link down" \1751 "\n -m MODE API mode (mii, priv, ethtool, wlan, iff, auto)" \1752 "\n -k Kill running daemon" \1753 1754 #define ifup_trivial_usage \1755 "[-an"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] [-i FILE] IFACE..."1756 #define ifup_full_usage "\n\n" \1757 "Options:" \1758 "\n -a De/configure all interfaces automatically" \1759 "\n -i FILE Use FILE for interface definitions" \1760 "\n -n Print out what would happen, but don't do it" \1761 IF_FEATURE_IFUPDOWN_MAPPING( \1762 "\n (note: doesn't disable mappings)" \1763 "\n -m Don't run any mappings" \1764 ) \1765 "\n -v Print out what would happen before doing it" \1766 "\n -f Force de/configuration" \1767 1768 #define ifdown_trivial_usage \1769 "[-an"IF_FEATURE_IFUPDOWN_MAPPING("m")"vf] [-i FILE] IFACE..."1770 #define ifdown_full_usage "\n\n" \1771 "Options:" \1772 "\n -a De/configure all interfaces automatically" \1773 "\n -i FILE Use FILE for interface definitions" \1774 "\n -n Print out what would happen, but don't do it" \1775 IF_FEATURE_IFUPDOWN_MAPPING( \1776 "\n (note: doesn't disable mappings)" \1777 "\n -m Don't run any mappings" \1778 ) \1779 "\n -v Print out what would happen before doing it" \1780 "\n -f Force de/configuration" \1781 1782 #define inetd_trivial_usage \1783 "[-fe] [-q N] [-R N] [CONFFILE]"1784 #define inetd_full_usage "\n\n" \1785 "Listen for network connections and launch programs\n" \1786 "\nOptions:" \1787 "\n -f Run in foreground" \1788 "\n -e Log to stderr" \1789 "\n -q N Socket listen queue (default: 128)" \1790 "\n -R N Pause services after N connects/min" \1791 "\n (default: 0 - disabled)" \1792 1793 #define inotifyd_trivial_usage \1794 "PROG FILE1[:MASK]..."1795 #define inotifyd_full_usage "\n\n" \1796 "Run PROG on filesystem changes." \1797 "\nWhen a filesystem event matching MASK occurs on FILEn," \1798 "\nPROG ACTUAL_EVENTS FILEn [SUBFILE] is run." \1799 "\nEvents:" \1800 "\n a File is accessed" \1801 "\n c File is modified" \1802 "\n e Metadata changed" \1803 "\n w Writable file is closed" \1804 "\n 0 Unwritable file is closed" \1805 "\n r File is opened" \1806 "\n D File is deleted" \1807 "\n M File is moved" \1808 "\n u Backing fs is unmounted" \1809 "\n o Event queue overflowed" \1810 "\n x File can't be watched anymore" \1811 "\nIf watching a directory:" \1812 "\n m Subfile is moved into dir" \1813 "\n y Subfile is moved out of dir" \1814 "\n n Subfile is created" \1815 "\n d Subfile is deleted" \1816 "\n" \1817 "\ninotifyd waits for PROG to exit." \1818 "\nWhen x event happens for all FILEs, inotifyd exits." \1819 1820 /* -v, -b, -c are ignored */1821 #define install_trivial_usage \1822 "[-cdDsp] [-o USER] [-g GRP] [-m MODE] [SOURCE]... DEST"1823 #define install_full_usage "\n\n" \1824 "Copy files and set attributes\n" \1825 "\nOptions:" \1826 "\n -c Just copy (default)" \1827 "\n -d Create directories" \1828 "\n -D Create leading target directories" \1829 "\n -s Strip symbol table" \1830 "\n -p Preserve date" \1831 "\n -o USER Set ownership" \1832 "\n -g GRP Set group ownership" \1833 "\n -m MODE Set permissions" \1834 IF_SELINUX( \1835 "\n -Z Set security context" \1836 )1837 1838 /* would need to make the " | " optional depending on more than one selected: */1839 #define ip_trivial_usage \1840 "[OPTIONS] {" \1841 IF_FEATURE_IP_ADDRESS("address | ") \1842 IF_FEATURE_IP_ROUTE("route | ") \1843 IF_FEATURE_IP_LINK("link | ") \1844 IF_FEATURE_IP_TUNNEL("tunnel | ") \1845 IF_FEATURE_IP_RULE("rule") \1846 "} {COMMAND}"1847 #define ip_full_usage "\n\n" \1848 "ip [OPTIONS] OBJECT {COMMAND}\n" \1849 "where OBJECT := {" \1850 IF_FEATURE_IP_ADDRESS("address | ") \1851 IF_FEATURE_IP_ROUTE("route | ") \1852 IF_FEATURE_IP_LINK("link | ") \1853 IF_FEATURE_IP_TUNNEL("tunnel | ") \1854 IF_FEATURE_IP_RULE("rule") \1855 "}\n" \1856 "OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }" \1857 1858 #define ipaddr_trivial_usage \1859 "{ {add|del} IFADDR dev STRING | {show|flush}\n" \1860 " [dev STRING] [to PREFIX] }"1861 #define ipaddr_full_usage "\n\n" \1862 "ipaddr {add|delete} IFADDR dev STRING\n" \1863 "ipaddr {show|flush} [dev STRING] [scope SCOPE-ID]\n" \1864 " [to PREFIX] [label PATTERN]\n" \1865 " IFADDR := PREFIX | ADDR peer PREFIX\n" \1866 " [broadcast ADDR] [anycast ADDR]\n" \1867 " [label STRING] [scope SCOPE-ID]\n" \1868 " SCOPE-ID := [host | link | global | NUMBER]" \1869 1870 #define ipcalc_trivial_usage \1871 "[OPTIONS] ADDRESS[[/]NETMASK] [NETMASK]"1872 #define ipcalc_full_usage "\n\n" \1873 "Calculate IP network settings from a IP address\n" \1874 "\nOptions:" \1875 IF_FEATURE_IPCALC_LONG_OPTIONS( \1876 "\n -b,--broadcast Display calculated broadcast address" \1877 "\n -n,--network Display calculated network address" \1878 "\n -m,--netmask Display default netmask for IP" \1879 IF_FEATURE_IPCALC_FANCY( \1880 "\n -p,--prefix Display the prefix for IP/NETMASK" \1881 "\n -h,--hostname Display first resolved host name" \1882 "\n -s,--silent Don't ever display error messages" \1883 ) \1884 ) \1885 IF_NOT_FEATURE_IPCALC_LONG_OPTIONS( \1886 "\n -b Display calculated broadcast address" \1887 "\n -n Display calculated network address" \1888 "\n -m Display default netmask for IP" \1889 IF_FEATURE_IPCALC_FANCY( \1890 "\n -p Display the prefix for IP/NETMASK" \1891 "\n -h Display first resolved host name" \1892 "\n -s Don't ever display error messages" \1893 ) \1894 )1895 1896 #define ipcrm_trivial_usage \1897 "[-MQS key] [-mqs id]"1898 #define ipcrm_full_usage "\n\n" \1899 "Upper-case options MQS remove an object by shmkey value.\n" \1900 "Lower-case options remove an object by shmid value.\n" \1901 "\nOptions:" \1902 "\n -mM Remove memory segment after last detach" \1903 "\n -qQ Remove message queue" \1904 "\n -sS Remove semaphore" \1905 1906 #define ipcs_trivial_usage \1907 "[[-smq] -i shmid] | [[-asmq] [-tcplu]]"1908 #define ipcs_full_usage "\n\n" \1909 " -i Show specific resource" \1910 "\nResource specification:" \1911 "\n -m Shared memory segments" \1912 "\n -q Message queues" \1913 "\n -s Semaphore arrays" \1914 "\n -a All (default)" \1915 "\nOutput format:" \1916 "\n -t Time" \1917 "\n -c Creator" \1918 "\n -p Pid" \1919 "\n -l Limits" \1920 "\n -u Summary" \1921 1922 #define iplink_trivial_usage \1923 "{ set DEVICE { up | down | arp { on | off } | show [DEVICE] }"1924 #define iplink_full_usage "\n\n" \1925 "iplink set DEVICE { up | down | arp | multicast { on | off } |\n" \1926 " dynamic { on | off } |\n" \1927 " mtu MTU }\n" \1928 "iplink show [DEVICE]" \1929 1930 #define iproute_trivial_usage \1931 "{ list | flush | { add | del | change | append |\n" \1932 " replace | monitor } ROUTE }"1933 #define iproute_full_usage "\n\n" \1934 "iproute { list | flush } SELECTOR\n" \1935 "iproute get ADDRESS [from ADDRESS iif STRING]\n" \1936 " [oif STRING] [tos TOS]\n" \1937 "iproute { add | del | change | append | replace | monitor } ROUTE\n" \1938 " SELECTOR := [root PREFIX] [match PREFIX] [proto RTPROTO]\n" \1939 " ROUTE := [TYPE] PREFIX [tos TOS] [proto RTPROTO]\n" \1940 " [metric METRIC]" \1941 1942 #define iprule_trivial_usage \1943 "{[list | add | del] RULE}"1944 #define iprule_full_usage "\n\n" \1945 "iprule [list | add | del] SELECTOR ACTION\n" \1946 " SELECTOR := [from PREFIX] [to PREFIX] [tos TOS] [fwmark FWMARK]\n" \1947 " [dev STRING] [pref NUMBER]\n" \1948 " ACTION := [table TABLE_ID] [nat ADDRESS]\n" \1949 " [prohibit | reject | unreachable]\n" \1950 " [realms [SRCREALM/]DSTREALM]\n" \1951 " TABLE_ID := [local | main | default | NUMBER]" \1952 1953 #define iptunnel_trivial_usage \1954 "{ add | change | del | show } [NAME]\n" \1955 " [mode { ipip | gre | sit }]\n" \1956 " [remote ADDR] [local ADDR] [ttl TTL]"1957 #define iptunnel_full_usage "\n\n" \1958 "iptunnel { add | change | del | show } [NAME]\n" \1959 " [mode { ipip | gre | sit }] [remote ADDR] [local ADDR]\n" \1960 " [[i|o]seq] [[i|o]key KEY] [[i|o]csum]\n" \1961 " [ttl TTL] [tos TOS] [[no]pmtudisc] [dev PHYS_DEV]" \1962 1963 #define kbd_mode_trivial_usage \1964 "[-a|k|s|u] [-C TTY]"1965 #define kbd_mode_full_usage "\n\n" \1966 "Report or set the keyboard mode\n" \1967 "\nOptions:" \1968 "\n -a Default (ASCII)" \1969 "\n -k Medium-raw (keyboard)" \1970 "\n -s Raw (scancode)" \1971 "\n -u Unicode (utf-8)" \1972 "\n -C TTY Affect TTY instead of /dev/tty" \1973 1974 #define kill_trivial_usage \1975 "[-l] [-SIG] PID..."1976 #define kill_full_usage "\n\n" \1977 "Send a signal (default: TERM) to given PIDs\n" \1978 "\nOptions:" \1979 "\n -l List all signal names and numbers" \1980 /* "\n -s SIG Yet another way of specifying SIG" */ \1981 1982 #define kill_example_usage \1983 "$ ps | grep apache\n" \1984 "252 root root S [apache]\n" \1985 "263 www-data www-data S [apache]\n" \1986 "264 www-data www-data S [apache]\n" \1987 "265 www-data www-data S [apache]\n" \1988 "266 www-data www-data S [apache]\n" \1989 "267 www-data www-data S [apache]\n" \1990 "$ kill 252\n"1991 1992 #define killall_trivial_usage \1993 "[-l] [-q] [-SIG] PROCESS_NAME..."1994 #define killall_full_usage "\n\n" \1995 "Send a signal (default: TERM) to given processes\n" \1996 "\nOptions:" \1997 "\n -l List all signal names and numbers" \1998 /* "\n -s SIG Yet another way of specifying SIG" */ \1999 "\n -q Don't complain if no processes were killed" \2000 2001 #define killall_example_usage \2002 "$ killall apache\n"2003 2004 #define killall5_trivial_usage \2005 "[-l] [-SIG] [-o PID]..."2006 #define killall5_full_usage "\n\n" \2007 "Send a signal (default: TERM) to all processes outside current session\n" \2008 "\nOptions:" \2009 "\n -l List all signal names and numbers" \2010 "\n -o PID Don't signal this PID" \2011 /* "\n -s SIG Yet another way of specifying SIG" */ \2012 2013 #define klogd_trivial_usage \2014 "[-c N] [-n]"2015 #define klogd_full_usage "\n\n" \2016 "Kernel logger\n" \2017 "\nOptions:" \2018 "\n -c N Only messages with level < N are printed to console" \2019 "\n -n Run in foreground" \2020 2021 #define length_trivial_usage \2022 "STRING"2023 #define length_full_usage "\n\n" \2024 "Print STRING's length"2025 2026 #define length_example_usage \2027 "$ length Hello\n" \2028 "5\n"2029 2030 #define less_trivial_usage \2031 "[-EMNmh~I?] [FILE]..."2032 #define less_full_usage "\n\n" \2033 "View FILE (or stdin) one screenful at a time\n" \2034 "\nOptions:" \2035 "\n -E Quit once the end of a file is reached" \2036 "\n -M,-m Display status line with line numbers" \2037 "\n and percentage through the file" \2038 "\n -N Prefix line number to each line" \2039 "\n -I Ignore case in all searches" \2040 "\n -~ Suppress ~s displayed past the end of the file" \2041 2042 #define linux32_trivial_usage NOUSAGE_STR2043 #define linux32_full_usage ""2044 #define linux64_trivial_usage NOUSAGE_STR2045 #define linux64_full_usage ""2046 2047 #define setarch_trivial_usage \2048 "personality PROG ARGS"2049 #define setarch_full_usage "\n\n" \2050 "Personality may be:\n" \2051 " linux32 Set 32bit uname emulation\n" \2052 " linux64 Set 64bit uname emulation" \2053 2054 #define ln_trivial_usage \2055 "[OPTIONS] TARGET... LINK|DIR"2056 #define ln_full_usage "\n\n" \2057 "Create a link LINK or DIR/TARGET to the specified TARGET(s)\n" \2058 "\nOptions:" \2059 "\n -s Make symlinks instead of hardlinks" \2060 "\n -f Remove existing destinations" \2061 "\n -n Don't dereference symlinks - treat like normal file" \2062 "\n -b Make a backup of the target (if exists) before link operation" \2063 "\n -S suf Use suffix instead of ~ when making backup files" \2064 2065 #define ln_example_usage \2066 "$ ln -s BusyBox /tmp/ls\n" \2067 "$ ls -l /tmp/ls\n" \2068 "lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox*\n"2069 2070 #define load_policy_trivial_usage NOUSAGE_STR2071 #define load_policy_full_usage ""2072 2073 #define loadfont_trivial_usage \2074 "< font"2075 #define loadfont_full_usage "\n\n" \2076 "Load a console font from stdin" \2077 /* "\n -C TTY Affect TTY instead of /dev/tty" */ \2078 2079 #define loadfont_example_usage \2080 "$ loadfont < /etc/i18n/fontname\n"2081 2082 #define loadkmap_trivial_usage \2083 "< keymap"2084 #define loadkmap_full_usage "\n\n" \2085 "Load a binary keyboard translation table from stdin\n" \2086 /* "\n -C TTY Affect TTY instead of /dev/tty" */ \2087 2088 #define loadkmap_example_usage \2089 "$ loadkmap < /etc/i18n/lang-keymap\n"2090 2091 #define logger_trivial_usage \2092 "[OPTIONS] [MESSAGE]"2093 #define logger_full_usage "\n\n" \2094 "Write MESSAGE (or stdin) to syslog\n" \2095 "\nOptions:" \2096 "\n -s Log to stderr as well as the system log" \2097 "\n -t TAG Log using the specified tag (defaults to user name)" \2098 "\n -p PRIO Priority (numeric or facility.level pair)" \2099 2100 #define logger_example_usage \2101 "$ logger \"hello\"\n"2102 2103 #define login_trivial_usage \2104 "[-p] [-h HOST] [[-f] USER]"2105 #define login_full_usage "\n\n" \2106 "Begin a new session on the system\n" \2107 "\nOptions:" \2108 "\n -f Don't authenticate (user already authenticated)" \2109 "\n -h Name of the remote host" \2110 "\n -p Preserve environment" \2111 2112 #define logname_trivial_usage \2113 ""2114 #define logname_full_usage "\n\n" \2115 "Print the name of the current user"2116 #define logname_example_usage \2117 "$ logname\n" \2118 "root\n"2119 2120 #define logread_trivial_usage \2121 "[-f]"2122 #define logread_full_usage "\n\n" \2123 "Show messages in syslogd's circular buffer\n" \2124 "\nOptions:" \2125 "\n -f Output data as log grows" \2126 2127 #define losetup_trivial_usage \2128 "[-o OFS] LOOPDEV FILE - associate loop devices\n" \2129 " losetup -d LOOPDEV - disassociate\n" \2130 " losetup [-f] - show"2131 #define losetup_full_usage "\n\n" \2132 "Options:" \2133 "\n -o OFS Start OFS bytes into FILE" \2134 "\n -f Show first free loop device" \2135 2136 #define losetup_notes_usage \2137 "No arguments will display all current associations.\n" \2138 "One argument (losetup /dev/loop1) will display the current association\n" \2139 "(if any), or disassociate it (with -d). The display shows the offset\n" \2140 "and filename of the file the loop device is currently bound to.\n\n" \2141 "Two arguments (losetup /dev/loop1 file.img) create a new association,\n" \2142 "with an optional offset (-o 12345). Encryption is not yet supported.\n" \2143 "losetup -f will show the first loop free loop device\n\n"2144 2145 #define lpd_trivial_usage \2146 "SPOOLDIR [HELPER [ARGS]]"2147 #define lpd_full_usage "\n\n" \2148 "SPOOLDIR must contain (symlinks to) device nodes or directories" \2149 "\nwith names matching print queue names. In the first case, jobs are" \2150 "\nsent directly to the device. Otherwise each job is stored in queue" \2151 "\ndirectory and HELPER program is called. Name of file to print" \2152 "\nis passed in $DATAFILE variable." \2153 "\nExample:" \2154 "\n tcpsvd -E 0 515 softlimit -m 999999 lpd /var/spool ./print" \2155 2156 #define lpq_trivial_usage \2157 "[-P queue[@host[:port]]] [-U USERNAME] [-d JOBID]... [-fs]"2158 #define lpq_full_usage "\n\n" \2159 "Options:" \2160 "\n -P lp service to connect to (else uses $PRINTER)" \2161 "\n -d Delete jobs" \2162 "\n -f Force any waiting job to be printed" \2163 "\n -s Short display" \2164 2165 #define lpr_trivial_usage \2166 "-P queue[@host[:port]] -U USERNAME -J TITLE -Vmh [FILE]..."2167 /* -C CLASS exists too, not shown.2168 * CLASS is supposed to be printed on banner page, if one is requested */2169 #define lpr_full_usage "\n\n" \2170 "Options:" \2171 "\n -P lp service to connect to (else uses $PRINTER)"\2172 "\n -m Send mail on completion" \2173 "\n -h Print banner page too" \2174 "\n -V Verbose" \2175 2176 #define ls_trivial_usage \2177 "[-1Aa" IF_FEATURE_LS_TIMESTAMPS("c") "Cd" \2178 IF_FEATURE_LS_TIMESTAMPS("e") IF_FEATURE_LS_FILETYPES("F") "iln" \2179 IF_FEATURE_LS_FILETYPES("p") IF_FEATURE_LS_FOLLOWLINKS("L") \2180 IF_FEATURE_LS_RECURSIVE("R") IF_FEATURE_LS_SORTFILES("rS") "s" \2181 IF_FEATURE_AUTOWIDTH("T") IF_FEATURE_LS_TIMESTAMPS("tu") \2182 IF_FEATURE_LS_SORTFILES("v") IF_FEATURE_AUTOWIDTH("w") "x" \2183 IF_FEATURE_LS_SORTFILES("X") IF_FEATURE_HUMAN_READABLE("h") "k" \2184 IF_SELINUX("K") "] [FILE]..."2185 #define ls_full_usage "\n\n" \2186 "List directory contents\n" \2187 "\nOptions:" \2188 "\n -1 List in a single column" \2189 "\n -A Don't list . and .." \2190 "\n -a Don't hide entries starting with ." \2191 "\n -C List by columns" \2192 IF_FEATURE_LS_TIMESTAMPS( \2193 "\n -c With -l: sort by ctime") \2194 IF_FEATURE_LS_COLOR( \2195 "\n --color[={always,never,auto}] Control coloring") \2196 "\n -d List directory entries instead of contents" \2197 IF_FEATURE_LS_TIMESTAMPS( \2198 "\n -e List full date and time") \2199 IF_FEATURE_LS_FILETYPES( \2200 "\n -F Append indicator (one of */=@|) to entries") \2201 "\n -i List inode numbers" \2202 "\n -l Long listing format" \2203 "\n -n List numeric UIDs and GIDs instead of names" \2204 IF_FEATURE_LS_FILETYPES( \2205 "\n -p Append indicator (one of /=@|) to entries") \2206 IF_FEATURE_LS_FOLLOWLINKS( \2207 "\n -L List entries pointed to by symlinks") \2208 IF_FEATURE_LS_RECURSIVE( \2209 "\n -R Recurse") \2210 IF_FEATURE_LS_SORTFILES( \2211 "\n -r Sort in reverse order") \2212 IF_FEATURE_LS_SORTFILES( \2213 "\n -S Sort by file size") \2214 "\n -s List the size of each file, in blocks" \2215 IF_FEATURE_AUTOWIDTH( \2216 "\n -T N Assume tabstop every N columns") \2217 IF_FEATURE_LS_TIMESTAMPS( \2218 "\n -t With -l: sort by modification time") \2219 IF_FEATURE_LS_TIMESTAMPS( \2220 "\n -u With -l: sort by access time") \2221 IF_FEATURE_LS_SORTFILES( \2222 "\n -v Sort by version") \2223 IF_FEATURE_AUTOWIDTH( \2224 "\n -w N Assume the terminal is N columns wide") \2225 "\n -x List by lines" \2226 IF_FEATURE_LS_SORTFILES( \2227 "\n -X Sort by extension") \2228 IF_FEATURE_HUMAN_READABLE( \2229 "\n -h List sizes in human readable format (1K 243M 2G)") \2230 IF_SELINUX( \2231 "\n -k List security context") \2232 IF_SELINUX( \2233 "\n -K List security context in long format") \2234 IF_SELINUX( \2235 "\n -Z List security context and permission") \2236 2237 #define lsattr_trivial_usage \2238 "[-Radlv] [FILE]..."2239 #define lsattr_full_usage "\n\n" \2240 "List file attributes on an ext2 fs\n" \2241 "\nOptions:" \2242 "\n -R Recurse" \2243 "\n -a Don't hide entries starting with ." \2244 "\n -d List directory entries instead of contents" \2245 "\n -l List long flag names" \2246 "\n -v List the file's version/generation number" \2247 2248 #define lspci_trivial_usage \2249 "[-mk]"2250 #define lspci_full_usage "\n\n" \2251 "List all PCI devices" \2252 "\n" \2253 "\n -m Parseable output" \2254 "\n -k Show driver" \2255 2256 #define lsusb_trivial_usage NOUSAGE_STR2257 #define lsusb_full_usage ""2258 2259 #if ENABLE_FEATURE_MAKEDEVS_LEAF2260 #define makedevs_trivial_usage \2261 "NAME TYPE MAJOR MINOR FIRST LAST [s]"2262 #define makedevs_full_usage "\n\n" \2263 "Create a range of block or character special files" \2264 "\n" \2265 "\nTYPE is:" \2266 "\n b Block device" \2267 "\n c Character device" \2268 "\n f FIFO, MAJOR and MINOR are ignored" \2269 "\n" \2270 "\nFIRST..LAST specify numbers appended to NAME." \2271 "\nIf 's' is the last argument, the base device is created as well." \2272 "\n" \2273 "\nExamples:" \2274 "\n makedevs /dev/ttyS c 4 66 2 63 -> ttyS2-ttyS63" \2275 "\n makedevs /dev/hda b 3 0 0 8 s -> hda,hda1-hda8"2276 #define makedevs_example_usage \2277 "# makedevs /dev/ttyS c 4 66 2 63\n" \2278 "[creates ttyS2-ttyS63]\n" \2279 "# makedevs /dev/hda b 3 0 0 8 s\n" \2280 "[creates hda,hda1-hda8]\n"2281 #endif2282 2283 #if ENABLE_FEATURE_MAKEDEVS_TABLE2284 #define makedevs_trivial_usage \2285 "[-d device_table] rootdir"2286 #define makedevs_full_usage "\n\n" \2287 "Create a range of special files as specified in a device table.\n" \2288 "Device table entries take the form of:\n" \2289 "<type> <mode> <uid> <gid> <major> <minor> <start> <inc> <count>\n" \2290 "Where name is the file name, type can be one of:\n" \2291 " f Regular file\n" \2292 " d Directory\n" \2293 " c Character device\n" \2294 " b Block device\n" \2295 " p Fifo (named pipe)\n" \2296 "uid is the user id for the target file, gid is the group id for the\n" \2297 "target file. The rest of the entries (major, minor, etc) apply to\n" \2298 "to device special files. A '-' may be used for blank entries."2299 #define makedevs_example_usage \2300 "For example:\n" \2301 "<name> <type> <mode><uid><gid><major><minor><start><inc><count>\n" \2302 "/dev d 755 0 0 - - - - -\n" \2303 "/dev/console c 666 0 0 5 1 - - -\n" \2304 "/dev/null c 666 0 0 1 3 0 0 -\n" \2305 "/dev/zero c 666 0 0 1 5 0 0 -\n" \2306 "/dev/hda b 640 0 0 3 0 0 0 -\n" \2307 "/dev/hda b 640 0 0 3 1 1 1 15\n\n" \2308 "Will Produce:\n" \2309 "/dev\n" \2310 "/dev/console\n" \2311 "/dev/null\n" \2312 "/dev/zero\n" \2313 "/dev/hda\n" \2314 "/dev/hda[0-15]\n"2315 #endif2316 2317 #define makemime_trivial_usage \2318 "[OPTIONS] [FILE]..."2319 #define makemime_full_usage "\n\n" \2320 "Create multipart MIME-encoded message from FILEs\n" \2321 /* "Transfer encoding is base64, disposition is inline (not attachment)\n" */ \2322 "\nOptions:" \2323 "\n -o FILE Output. Default: stdout" \2324 "\n -a HDR Add header. Examples:" \2325 "\n \"From: user@host.org\", \"Date: `date -R`\"" \2326 "\n -c CT Content type. Default: text/plain" \2327 "\n -C CS Charset. Default: " CONFIG_FEATURE_MIME_CHARSET \2328 /* "\n -e ENC Transfer encoding. Ignored. base64 is assumed" */ \2329 "\n" \2330 "\nOther options are silently ignored" \2331 2332 #define man_trivial_usage \2333 "[-aw] [MANPAGE]..."2334 #define man_full_usage "\n\n" \2335 "Format and display manual page\n" \2336 "\nOptions:" \2337 "\n -a Display all pages" \2338 "\n -w Show page locations" \2339 2340 #define matchpathcon_trivial_usage \2341 "[-n] [-N] [-f file_contexts_file] [-p prefix] [-V]"2342 #define matchpathcon_full_usage "\n\n" \2343 " -n Don't display path" \2344 "\n -N Don't use translations" \2345 "\n -f Use alternate file_context file" \2346 "\n -p Use prefix to speed translations" \2347 "\n -V Verify file context on disk matches defaults" \2348 2349 #define md5sum_trivial_usage \2350 "[FILE]..." \2351 IF_FEATURE_MD5_SHA1_SUM_CHECK("\n or: md5sum -c [-sw] [FILE]")2352 #define md5sum_full_usage "\n\n" \2353 "Print" IF_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " MD5 checksums" \2354 IF_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \2355 "\nOptions:" \2356 "\n -c Check sums against given list" \2357 "\n -s Don't output anything, status code shows success" \2358 "\n -w Warn about improperly formatted checksum lines" \2359 )2360 2361 #define md5sum_example_usage \2362 "$ md5sum < busybox\n" \2363 "6fd11e98b98a58f64ff3398d7b324003\n" \2364 "$ md5sum busybox\n" \2365 "6fd11e98b98a58f64ff3398d7b324003 busybox\n" \2366 "$ md5sum -c -\n" \2367 "6fd11e98b98a58f64ff3398d7b324003 busybox\n" \2368 "busybox: OK\n" \2369 "^D\n"2370 2371 #define sha1sum_trivial_usage \2372 "[FILE]..." \2373 IF_FEATURE_MD5_SHA1_SUM_CHECK("\n or: sha1sum -c [-sw] [FILE]")2374 #define sha1sum_full_usage "\n\n" \2375 "Print" IF_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " SHA1 checksums" \2376 IF_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \2377 "\nOptions:" \2378 "\n -c Check sums against given list" \2379 "\n -s Don't output anything, status code shows success" \2380 "\n -w Warn about improperly formatted checksum lines" \2381 )2382 2383 #define sha256sum_trivial_usage \2384 "[FILE]..." \2385 IF_FEATURE_MD5_SHA1_SUM_CHECK("\n or: sha256sum -c [-sw] [FILE]")2386 #define sha256sum_full_usage "\n\n" \2387 "Print" IF_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " SHA256 checksums" \2388 IF_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \2389 "\nOptions:" \2390 "\n -c Check sums against given list" \2391 "\n -s Don't output anything, status code shows success" \2392 "\n -w Warn about improperly formatted checksum lines" \2393 )2394 2395 #define sha512sum_trivial_usage \2396 "[FILE]..." \2397 IF_FEATURE_MD5_SHA1_SUM_CHECK("\n or: sha512sum -c [-sw] [FILE]")2398 #define sha512sum_full_usage "\n\n" \2399 "Print" IF_FEATURE_MD5_SHA1_SUM_CHECK(" or check") " SHA512 checksums" \2400 IF_FEATURE_MD5_SHA1_SUM_CHECK( "\n" \2401 "\nOptions:" \2402 "\n -c Check sums against given list" \2403 "\n -s Don't output anything, status code shows success" \2404 "\n -w Warn about improperly formatted checksum lines" \2405 )2406 2407 #define mdev_trivial_usage \2408 "[-s]"2409 #define mdev_full_usage "\n\n" \2410 " -s Scan /sys and populate /dev during system boot\n" \2411 "\n" \2412 "It can be run by kernel as a hotplug helper. To activate it:\n" \2413 " echo /sbin/mdev > /proc/sys/kernel/hotplug\n" \2414 IF_FEATURE_MDEV_CONF( \2415 "It uses /etc/mdev.conf with lines\n" \2416 "[-]DEVNAME UID:GID PERM" \2417 IF_FEATURE_MDEV_RENAME(" [>|=PATH]") \2418 IF_FEATURE_MDEV_EXEC(" [@|$|*PROG]") \2419 ) \2420 2421 #define mdev_notes_usage "" \2422 IF_FEATURE_MDEV_CONFIG( \2423 "The mdev config file contains lines that look like:\n" \2424 " hd[a-z][0-9]* 0:3 660\n\n" \2425 "That's device name (with regex match), uid:gid, and permissions.\n\n" \2426 IF_FEATURE_MDEV_EXEC( \2427 "Optionally, that can be followed (on the same line) by a special character\n" \2428 "and a command line to run after creating/before deleting the corresponding\n" \2429 "device(s). The environment variable $MDEV indicates the active device node\n" \2430 "(which is useful if it's a regex match). For example:\n\n" \2431 " hdc root:cdrom 660 *ln -s $MDEV cdrom\n\n" \2432 "The special characters are @ (run after creating), $ (run before deleting),\n" \2433 "and * (run both after creating and before deleting). The commands run in\n" \2434 "the /dev directory, and use system() which calls /bin/sh.\n\n" \2435 ) \2436 "Config file parsing stops on the first matching line. If no config\n" \2437 "entry is matched, devices are created with default 0:0 660. (Make\n" \2438 "the last line match .* to override this.)\n\n" \2439 )2440 2441 #define microcom_trivial_usage \2442 "[-d DELAY] [-t TIMEOUT] [-s SPEED] [-X] TTY"2443 #define microcom_full_usage "\n\n" \2444 "Copy bytes for stdin to TTY and from TTY to stdout\n" \2445 "\nOptions:" \2446 "\n -d Wait up to DELAY ms for TTY output before sending every" \2447 "\n next byte to it" \2448 "\n -t Exit if both stdin and TTY are silent for TIMEOUT ms" \2449 "\n -s Set serial line to SPEED" \2450 "\n -X Disable special meaning of NUL and Ctrl-X from stdin" \2451 2452 #define mkdir_trivial_usage \2453 "[OPTIONS] DIRECTORY..."2454 #define mkdir_full_usage "\n\n" \2455 "Create DIRECTORY\n" \2456 "\nOptions:" \2457 "\n -m MODE Mode" \2458 "\n -p No error if exists; make parent directories as needed" \2459 IF_SELINUX( \2460 "\n -Z Set security context" \2461 )2462 2463 #define mkdir_example_usage \2464 "$ mkdir /tmp/foo\n" \2465 "$ mkdir /tmp/foo\n" \2466 "/tmp/foo: File exists\n" \2467 "$ mkdir /tmp/foo/bar/baz\n" \2468 "/tmp/foo/bar/baz: No such file or directory\n" \2469 "$ mkdir -p /tmp/foo/bar/baz\n"2470 2471 #define mkfifo_trivial_usage \2472 "[-m MODE] " IF_SELINUX("[-Z] ") "NAME"2473 #define mkfifo_full_usage "\n\n" \2474 "Create named pipe\n" \2475 "\nOptions:" \2476 "\n -m MODE Mode (default a=rw)" \2477 IF_SELINUX( \2478 "\n -Z Set security context" \2479 )2480 2481 #define mkfs_ext2_trivial_usage \2482 "[-Fn] " \2483 /* "[-c|-l filename] " */ \2484 "[-b BLK_SIZE] " \2485 /* "[-f fragment-size] [-g blocks-per-group] " */ \2486 "[-i INODE_RATIO] [-I INODE_SIZE] " \2487 /* "[-j] [-J journal-options] [-N number-of-inodes] " */ \2488 "[-m RESERVED_PERCENT] " \2489 /* "[-o creator-os] [-O feature[,...]] [-q] " */ \2490 /* "[r fs-revision-level] [-E extended-options] [-v] [-F] " */ \2491 "[-L LABEL] " \2492 /* "[-M last-mounted-directory] [-S] [-T filesystem-type] " */ \2493 "BLOCKDEV [KBYTES]"2494 #define mkfs_ext2_full_usage "\n\n" \2495 " -b BLK_SIZE Block size, bytes" \2496 /* "\n -c Check device for bad blocks" */ \2497 /* "\n -E opts Set extended options" */ \2498 /* "\n -f size Fragment size in bytes" */ \2499 "\n -F Force" \2500 /* "\n -g N Number of blocks in a block group" */ \2501 "\n -i RATIO Max number of files is filesystem_size / RATIO" \2502 "\n -I BYTES Inode size (min 128)" \2503 /* "\n -j Create a journal (ext3)" */ \2504 /* "\n -J opts Set journal options (size/device)" */ \2505 /* "\n -l file Read bad blocks list from file" */ \2506 "\n -L LBL Volume label" \2507 "\n -m PERCENT Percent of blocks to reserve for admin" \2508 /* "\n -M dir Set last mounted directory" */ \2509 "\n -n Dry run" \2510 /* "\n -N N Number of inodes to create" */ \2511 /* "\n -o os Set the 'creator os' field" */ \2512 /* "\n -O features Dir_index/filetype/has_journal/journal_dev/sparse_super" */ \2513 /* "\n -q Quiet" */ \2514 /* "\n -r rev Set filesystem revision" */ \2515 /* "\n -S Write superblock and group descriptors only" */ \2516 /* "\n -T fs-type Set usage type (news/largefile/largefile4)" */ \2517 /* "\n -v Verbose" */ \2518 2519 #define mkfs_minix_trivial_usage \2520 "[-c | -l FILE] [-nXX] [-iXX] BLOCKDEV [KBYTES]"2521 #define mkfs_minix_full_usage "\n\n" \2522 "Make a MINIX filesystem\n" \2523 "\nOptions:" \2524 "\n -c Check device for bad blocks" \2525 "\n -n [14|30] Maximum length of filenames" \2526 "\n -i INODES Number of inodes for the filesystem" \2527 "\n -l FILE Read bad blocks list from FILE" \2528 "\n -v Make version 2 filesystem" \2529 2530 #define mkfs_reiser_trivial_usage \2531 "[-f] [-l LABEL] BLOCKDEV [4K-BLOCKS]"2532 2533 #define mkfs_reiser_full_usage "\n\n" \2534 "Make a ReiserFS V3 filesystem\n" \2535 "\nOptions:" \2536 "\n -f Force" \2537 "\n -l LBL Volume label" \2538 2539 #define mkfs_vfat_trivial_usage \2540 "[-v] [-n LABEL] BLOCKDEV [KBYTES]"2541 /* Accepted but ignored:2542 "[-c] [-C] [-I] [-l bad-block-file] [-b backup-boot-sector] "2543 "[-m boot-msg-file] [-i volume-id] "2544 "[-s sectors-per-cluster] [-S logical-sector-size] [-f number-of-FATs] "2545 "[-h hidden-sectors] [-F fat-size] [-r root-dir-entries] [-R reserved-sectors] "2546 */2547 #define mkfs_vfat_full_usage "\n\n" \2548 "Make a FAT32 filesystem\n" \2549 "\nOptions:" \2550 /* "\n -c Check device for bad blocks" */ \2551 "\n -v Verbose" \2552 /* "\n -I Allow to use entire disk device (e.g. /dev/hda)" */ \2553 "\n -n LBL Volume label" \2554 2555 #define mknod_trivial_usage \2556 "[-m MODE] " IF_SELINUX("[-Z] ") "NAME TYPE MAJOR MINOR"2557 #define mknod_full_usage "\n\n" \2558 "Create a special file (block, character, or pipe)\n" \2559 "\nOptions:" \2560 "\n -m MODE Creation mode (default a=rw)" \2561 IF_SELINUX( \2562 "\n -Z Set security context" \2563 ) \2564 "\nTYPE:" \2565 "\n b Block device" \2566 "\n c or u Character device" \2567 "\n p Named pipe (MAJOR and MINOR are ignored)" \2568 2569 #define mknod_example_usage \2570 "$ mknod /dev/fd0 b 2 0\n" \2571 "$ mknod -m 644 /tmp/pipe p\n"2572 2573 #define mkswap_trivial_usage \2574 "[-L LBL] BLOCKDEV [KBYTES]"2575 #define mkswap_full_usage "\n\n" \2576 "Prepare BLOCKDEV to be used as swap partition\n" \2577 "\nOptions:" \2578 "\n -L LBL Label" \2579 2580 #define mktemp_trivial_usage \2581 "[-dt] [-p DIR] [TEMPLATE]"2582 #define mktemp_full_usage "\n\n" \2583 "Create a temporary file with name based on TEMPLATE and print its name.\n" \2584 "TEMPLATE must end with XXXXXX (e.g. [/dir/]nameXXXXXX).\n" \2585 "\nOptions:" \2586 "\n -d Make a directory instead of a file" \2587 /* "\n -q Fail silently if an error occurs" - we ignore it */ \2588 "\n -t Generate a path rooted in temporary directory" \2589 "\n -p DIR Use DIR as a temporary directory (implies -t)" \2590 "\n" \2591 "\nFor -t or -p, directory is chosen as follows:" \2592 "\n$TMPDIR if set, else -p DIR, else /tmp" \2593 2594 #define mktemp_example_usage \2595 "$ mktemp /tmp/temp.XXXXXX\n" \2596 "/tmp/temp.mWiLjM\n" \2597 "$ ls -la /tmp/temp.mWiLjM\n" \2598 "-rw------- 1 andersen andersen 0 Apr 25 17:10 /tmp/temp.mWiLjM\n"2599 2600 #define more_trivial_usage \2601 "[FILE]..."2602 #define more_full_usage "\n\n" \2603 "View FILE (or stdin) one screenful at a time"2604 2605 #define more_example_usage \2606 "$ dmesg | more\n"2607 2608 #define mount_trivial_usage \2609 "[OPTIONS] [-o OPTS] DEVICE NODE"2610 #define mount_full_usage "\n\n" \2611 "Mount a filesystem. Filesystem autodetection requires /proc.\n" \2612 "\nOptions:" \2613 "\n -a Mount all filesystems in fstab" \2614 IF_FEATURE_MOUNT_FAKE( \2615 IF_FEATURE_MTAB_SUPPORT( \2616 "\n -f Update /etc/mtab, but don't mount" \2617 ) \2618 IF_NOT_FEATURE_MTAB_SUPPORT( \2619 "\n -f Dry run" \2620 ) \2621 ) \2622 IF_FEATURE_MOUNT_HELPERS( \2623 "\n -i Don't run mount helper" \2624 ) \2625 IF_FEATURE_MTAB_SUPPORT( \2626 "\n -n Don't update /etc/mtab" \2627 ) \2628 "\n -r Read-only mount" \2629 "\n -w Read-write mount (default)" \2630 "\n -t FSTYPE Filesystem type" \2631 "\n -O OPT Mount only filesystems with option OPT (-a only)" \2632 "\n-o OPT:" \2633 IF_FEATURE_MOUNT_LOOP( \2634 "\n loop Ignored (loop devices are autodetected)" \2635 ) \2636 IF_FEATURE_MOUNT_FLAGS( \2637 "\n [a]sync Writes are [a]synchronous" \2638 "\n [no]atime Disable/enable updates to inode access times" \2639 "\n [no]diratime Disable/enable atime updates to directories" \2640 "\n [no]relatime Disable/enable atime updates relative to modification time" \2641 "\n [no]dev (Dis)allow use of special device files" \2642 "\n [no]exec (Dis)allow use of executable files" \2643 "\n [no]suid (Dis)allow set-user-id-root programs" \2644 "\n [r]shared Convert [recursively] to a shared subtree" \2645 "\n [r]slave Convert [recursively] to a slave subtree" \2646 "\n [r]private Convert [recursively] to a private subtree" \2647 "\n [un]bindable Make mount point [un]able to be bind mounted" \2648 "\n bind Bind a file or directory to another location" \2649 "\n move Relocate an existing mount point" \2650 ) \2651 "\n remount Remount a mounted filesystem, changing flags" \2652 "\n ro/rw Same as -r/-w" \2653 "\n" \2654 "\nThere are filesystem-specific -o flags." \2655 2656 #define mount_example_usage \2657 "$ mount\n" \2658 "/dev/hda3 on / type minix (rw)\n" \2659 "proc on /proc type proc (rw)\n" \2660 "devpts on /dev/pts type devpts (rw)\n" \2661 "$ mount /dev/fd0 /mnt -t msdos -o ro\n" \2662 "$ mount /tmp/diskimage /opt -t ext2 -o loop\n" \2663 "$ mount cd_image.iso mydir\n"2664 #define mount_notes_usage \2665 "Returns 0 for success, number of failed mounts for -a, or errno for one mount."2666 2667 #define mountpoint_trivial_usage \2668 "[-q] <[-dn] DIR | -x DEVICE>"2669 #define mountpoint_full_usage "\n\n" \2670 "Check if the directory is a mountpoint\n" \2671 "\nOptions:" \2672 "\n -q Quiet" \2673 "\n -d Print major/minor device number of the filesystem" \2674 "\n -n Print device name of the filesystem" \2675 "\n -x Print major/minor device number of the blockdevice" \2676 2677 #define mountpoint_example_usage \2678 "$ mountpoint /proc\n" \2679 "/proc is not a mountpoint\n" \2680 "$ mountpoint /sys\n" \2681 "/sys is a mountpoint\n"2682 2683 #define mt_trivial_usage \2684 "[-f device] opcode value"2685 #define mt_full_usage "\n\n" \2686 "Control magnetic tape drive operation\n" \2687 "\n" \2688 "Available Opcodes:\n" \2689 "\n" \2690 "bsf bsfm bsr bss datacompression drvbuffer eof eom erase\n" \2691 "fsf fsfm fsr fss load lock mkpart nop offline ras1 ras2\n" \2692 "ras3 reset retension rewind rewoffline seek setblk setdensity\n" \2693 "setpart tell unload unlock weof wset" \2694 2695 #define nameif_trivial_usage \2696 "[-s] [-c FILE] [{IFNAME MACADDR}]"2697 #define nameif_full_usage "\n\n" \2698 "Rename network interface while it in the down state\n" \2699 "\nOptions:" \2700 "\n -c FILE Use configuration file (default: /etc/mactab)" \2701 "\n -s Use syslog (LOCAL0 facility)" \2702 "\n IFNAME MACADDR new_interface_name interface_mac_address" \2703 2704 #define nameif_example_usage \2705 "$ nameif -s dmz0 00:A0:C9:8C:F6:3F\n" \2706 " or\n" \2707 "$ nameif -c /etc/my_mactab_file\n" \2708 2709 #define nmeter_trivial_usage \2710 "format_string"2711 #define nmeter_full_usage "\n\n" \2712 "Monitor system in real time\n\n" \2713 "Format specifiers:\n" \2714 " %Nc or %[cN] Monitor CPU. N - bar size, default 10\n" \2715 " (displays: S:system U:user N:niced D:iowait I:irq i:softirq)\n" \2716 " %[niface] Monitor network interface 'iface'\n" \2717 " %m Monitor allocated memory\n" \2718 " %[mf] Monitor free memory\n" \2719 " %[mt] Monitor total memory\n" \2720 " %s Monitor allocated swap\n" \2721 " %f Monitor number of used file descriptors\n" \2722 " %Ni Monitor total/specific IRQ rate\n" \2723 " %x Monitor context switch rate\n" \2724 " %p Monitor forks\n" \2725 " %[pn] Monitor # of processes\n" \2726 " %b Monitor block io\n" \2727 " %Nt Show time (with N decimal points)\n" \2728 " %Nd Milliseconds between updates (default:1000)\n" \2729 " %r Print <cr> instead of <lf> at EOL" \2730 2731 #define nmeter_example_usage \2732 "nmeter '%250d%t %20c int %i bio %b mem %m forks%p'"2733 2734 #define nohup_trivial_usage \2735 "PROG ARGS"2736 #define nohup_full_usage "\n\n" \2737 "Run PROG immune to hangups, with output to a non-tty"2738 #define nohup_example_usage \2739 "$ nohup make &"2740 2741 #define nslookup_trivial_usage \2742 "[HOST] [SERVER]"2743 #define nslookup_full_usage "\n\n" \2744 "Query the nameserver for the IP address of the given HOST\n" \2745 "optionally using a specified DNS server"2746 #define nslookup_example_usage \2747 "$ nslookup localhost\n" \2748 "Server: default\n" \2749 "Address: default\n" \2750 "\n" \2751 "Name: debian\n" \2752 "Address: 127.0.0.1\n"2753 2754 #define ntpd_trivial_usage \2755 "[-dnqNw"IF_FEATURE_NTPD_SERVER("l")"] [-S PROG] [-p PEER]..."2756 #define ntpd_full_usage "\n\n" \2757 "NTP client/server\n" \2758 "\nOptions:" \2759 "\n -d Verbose" \2760 "\n -n Do not daemonize" \2761 "\n -q Quit after clock is set" \2762 "\n -N Run at high priority" \2763 "\n -w Do not set time (only query peers), implies -n" \2764 IF_FEATURE_NTPD_SERVER( \2765 "\n -l Run as server on port 123" \2766 ) \2767 "\n -S PROG Run PROG after stepping time, stratum change, and every 11 mins" \2768 "\n -p PEER Obtain time from PEER (may be repeated)" \2769 2770 #define od_trivial_usage \2771 "[-aBbcDdeFfHhIiLlOovXx] " IF_DESKTOP("[-t TYPE] ") "[FILE]"2772 #define od_full_usage "\n\n" \2773 "Write an unambiguous representation, octal bytes by default, of FILE\n" \2774 "(or stdin) to stdout"2775 2776 #define openvt_trivial_usage \2777 "[-c N] [-sw] [PROG ARGS]"2778 #define openvt_full_usage "\n\n" \2779 "Start PROG on a new virtual terminal\n" \2780 "\nOptions:" \2781 "\n -c N Use specified VT" \2782 "\n -s Switch to the VT" \2783 /* "\n -l Run PROG as login shell (by prepending '-')" */ \2784 "\n -w Wait for PROG to exit" \2785 2786 #define openvt_example_usage \2787 "openvt 2 /bin/ash\n"2788 2789 /*2790 #define parse_trivial_usage \2791 "[-n MAXTOKENS] [-m MINTOKENS] [-d DELIMS] [-f FLAGS] FILE..."2792 #define parse_full_usage ""2793 */2794 2795 #define passwd_trivial_usage \2796 "[OPTIONS] [USER]"2797 #define passwd_full_usage "\n\n" \2798 "Change USER's password. If no USER is specified,\n" \2799 "changes the password for the current user.\n" \2800 "\nOptions:" \2801 "\n -a ALG Algorithm to use for password (des, md5)" /* ", sha1)" */ \2802 "\n -d Delete password for the account" \2803 "\n -l Lock (disable) account" \2804 "\n -u Unlock (re-enable) account" \2805 2806 #define chpasswd_trivial_usage \2807 IF_LONG_OPTS("[--md5|--encrypted]") IF_NOT_LONG_OPTS("[-m|-e]")2808 #define chpasswd_full_usage "\n\n" \2809 "Read user:password from stdin and update /etc/passwd\n" \2810 "\nOptions:" \2811 IF_LONG_OPTS( \2812 "\n -e,--encrypted Supplied passwords are in encrypted form" \2813 "\n -m,--md5 Use MD5 encryption instead of DES" \2814 ) \2815 IF_NOT_LONG_OPTS( \2816 "\n -e Supplied passwords are in encrypted form" \2817 "\n -m Use MD5 encryption instead of DES" \2818 )2819 2820 #define pgrep_trivial_usage \2821 "[-flnovx] [-s SID|-P PPID|PATTERN]"2822 #define pgrep_full_usage "\n\n" \2823 "Display process(es) selected by regex PATTERN\n" \2824 "\nOptions:" \2825 "\n -l Show command name too" \2826 "\n -f Match against entire command line" \2827 "\n -n Show the newest process only" \2828 "\n -o Show the oldest process only" \2829 "\n -v Negate the match" \2830 "\n -x Match whole name (not substring)" \2831 "\n -s Match session ID (0 for current)" \2832 "\n -P Match parent process ID" \2833 2834 #if (ENABLE_FEATURE_PIDOF_SINGLE || ENABLE_FEATURE_PIDOF_OMIT)2835 #define pidof_trivial_usage \2836 "[OPTIONS] [NAME]..."2837 #define USAGE_PIDOF "\n\nOptions:"2838 #else2839 #define pidof_trivial_usage \2840 "[NAME]..."2841 #define USAGE_PIDOF /* none */2842 #endif2843 #define pidof_full_usage "\n\n" \2844 "List PIDs of all processes with names that match NAMEs" \2845 USAGE_PIDOF \2846 IF_FEATURE_PIDOF_SINGLE( \2847 "\n -s Show only one PID" \2848 ) \2849 IF_FEATURE_PIDOF_OMIT( \2850 "\n -o PID Omit given pid" \2851 "\n Use %PPID to omit pid of pidof's parent" \2852 ) \2853 2854 #define pidof_example_usage \2855 "$ pidof init\n" \2856 "1\n" \2857 IF_FEATURE_PIDOF_OMIT( \2858 "$ pidof /bin/sh\n20351 5973 5950\n") \2859 IF_FEATURE_PIDOF_OMIT( \2860 "$ pidof /bin/sh -o %PPID\n20351 5950")2861 2862 #if !ENABLE_FEATURE_FANCY_PING2863 #define ping_trivial_usage \2864 "host"2865 #define ping_full_usage "\n\n" \2866 "Send ICMP ECHO_REQUEST packets to network hosts"2867 #define ping6_trivial_usage \2868 "host"2869 #define ping6_full_usage "\n\n" \2870 "Send ICMP ECHO_REQUEST packets to network hosts"2871 #else2872 #define ping_trivial_usage \2873 "[OPTIONS] HOST"2874 #define ping_full_usage "\n\n" \2875 "Send ICMP ECHO_REQUEST packets to network hosts\n" \2876 "\nOptions:" \2877 "\n -4,-6 Force IP or IPv6 name resolution" \2878 "\n -c CNT Send only CNT pings" \2879 "\n -s SIZE Send SIZE data bytes in packets (default:56)" \2880 "\n -I IFACE/IP Use interface or IP address as source" \2881 "\n -W SEC Seconds to wait for the first response (default:10)" \2882 "\n (after all -c CNT packets are sent)" \2883 "\n -w SEC Seconds until ping exits (default:infinite)" \2884 "\n (can exit earlier with -c CNT)" \2885 "\n -q Quiet, only displays output at start" \2886 "\n and when finished" \2887 2888 #define ping6_trivial_usage \2889 "[OPTIONS] HOST"2890 #define ping6_full_usage "\n\n" \2891 "Send ICMP ECHO_REQUEST packets to network hosts\n" \2892 "\nOptions:" \2893 "\n -c CNT Send only CNT pings" \2894 "\n -s SIZE Send SIZE data bytes in packets (default:56)" \2895 "\n -I IFACE/IP Use interface or IP address as source" \2896 "\n -q Quiet, only displays output at start" \2897 "\n and when finished" \2898 2899 #endif2900 #define ping_example_usage \2901 "$ ping localhost\n" \2902 "PING slag (127.0.0.1): 56 data bytes\n" \2903 "64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=20.1 ms\n" \2904 "\n" \2905 "--- debian ping statistics ---\n" \2906 "1 packets transmitted, 1 packets received, 0% packet loss\n" \2907 "round-trip min/avg/max = 20.1/20.1/20.1 ms\n"2908 #define ping6_example_usage \2909 "$ ping6 ip6-localhost\n" \2910 "PING ip6-localhost (::1): 56 data bytes\n" \2911 "64 bytes from ::1: icmp6_seq=0 ttl=64 time=20.1 ms\n" \2912 "\n" \2913 "--- ip6-localhost ping statistics ---\n" \2914 "1 packets transmitted, 1 packets received, 0% packet loss\n" \2915 "round-trip min/avg/max = 20.1/20.1/20.1 ms\n"2916 2917 #define pipe_progress_trivial_usage NOUSAGE_STR2918 #define pipe_progress_full_usage ""2919 2920 #define pivot_root_trivial_usage \2921 "NEW_ROOT PUT_OLD"2922 #define pivot_root_full_usage "\n\n" \2923 "Move the current root file system to PUT_OLD and make NEW_ROOT\n" \2924 "the new root file system"2925 2926 #define pkill_trivial_usage \2927 "[-l|-SIGNAL] [-fnovx] [-s SID|-P PPID|PATTERN]"2928 #define pkill_full_usage "\n\n" \2929 "Send a signal to process(es) selected by regex PATTERN\n" \2930 "\nOptions:" \2931 "\n -l List all signals" \2932 "\n -f Match against entire command line" \2933 "\n -n Signal the newest process only" \2934 "\n -o Signal the oldest process only" \2935 "\n -v Negate the match" \2936 "\n -x Match whole name (not substring)" \2937 "\n -s Match session ID (0 for current)" \2938 "\n -P Match parent process ID" \2939 2940 #define popmaildir_trivial_usage \2941 "[OPTIONS] MAILDIR [CONN_HELPER ARGS]"2942 #define popmaildir_full_usage "\n\n" \2943 "Fetch content of remote mailbox to local maildir\n" \2944 "\nOptions:" \2945 /* "\n -b Binary mode. Ignored" */ \2946 /* "\n -d Debug. Ignored" */ \2947 /* "\n -m Show used memory. Ignored" */ \2948 /* "\n -V Show version. Ignored" */ \2949 /* "\n -c Use tcpclient. Ignored" */ \2950 /* "\n -a Use APOP protocol. Implied. If server supports APOP -> use it" */ \2951 "\n -s Skip authorization" \2952 "\n -T Get messages with TOP instead of RETR" \2953 "\n -k Keep retrieved messages on the server" \2954 "\n -t SEC Network timeout" \2955 IF_FEATURE_POPMAILDIR_DELIVERY( \2956 "\n -F \"PROG ARGS\" Filter program (may be repeated)" \2957 "\n -M \"PROG ARGS\" Delivery program" \2958 ) \2959 "\n" \2960 "\nFetch from plain POP3 server:" \2961 "\npopmaildir -k DIR nc pop3.server.com 110 <user_and_pass.txt" \2962 "\nFetch from SSLed POP3 server and delete fetched emails:" \2963 "\npopmaildir DIR -- openssl s_client -quiet -connect pop3.server.com:995 <user_and_pass.txt"2964 /* "\n -R BYTES Remove old messages on the server >= BYTES. Ignored" */2965 /* "\n -Z N1-N2 Remove messages from N1 to N2 (dangerous). Ignored" */2966 /* "\n -L BYTES Don't retrieve new messages >= BYTES. Ignored" */2967 /* "\n -H LINES Type first LINES of a message. Ignored" */2968 #define popmaildir_example_usage \2969 "$ popmaildir -k ~/Maildir -- nc pop.drvv.ru 110 [<password_file]\n" \2970 "$ popmaildir ~/Maildir -- openssl s_client -quiet -connect pop.gmail.com:995 [<password_file]\n"2971 2972 #define printenv_trivial_usage \2973 "[VARIABLE]..."2974 #define printenv_full_usage "\n\n" \2975 "Print environment VARIABLEs.\n" \2976 "If no VARIABLE specified, print all."2977 2978 #define printf_trivial_usage \2979 "FORMAT [ARGUMENT]..."2980 #define printf_full_usage "\n\n" \2981 "Format and print ARGUMENT(s) according to FORMAT,\n" \2982 "where FORMAT controls the output exactly as in C printf"2983 #define printf_example_usage \2984 "$ printf \"Val=%d\\n\" 5\n" \2985 "Val=5\n"2986 2987 2988 #if ENABLE_DESKTOP2989 2990 #define ps_trivial_usage \2991 "[-o COL1,COL2=HEADER]" IF_FEATURE_SHOW_THREADS(" [-T]")2992 #define ps_full_usage "\n\n" \2993 "Show list of processes\n" \2994 "\nOptions:" \2995 "\n -o COL1,COL2=HEADER Select columns for display" \2996 IF_FEATURE_SHOW_THREADS( \2997 "\n -T Show threads" \2998 )2999 3000 #else /* !ENABLE_DESKTOP */3001 3002 #if !ENABLE_SELINUX && !ENABLE_FEATURE_PS_WIDE3003 #define USAGE_PS "\nThis version of ps accepts no options"3004 #else3005 #define USAGE_PS "\nOptions:"3006 #endif3007 3008 #define ps_trivial_usage \3009 ""3010 #define ps_full_usage "\n\n" \3011 "Show list of processes\n" \3012 USAGE_PS \3013 IF_SELINUX( \3014 "\n -Z Show selinux context" \3015 ) \3016 IF_FEATURE_PS_WIDE( \3017 "\n w Wide output" \3018 )3019 3020 #endif /* ENABLE_DESKTOP */3021 3022 #define ps_example_usage \3023 "$ ps\n" \3024 " PID Uid Gid State Command\n" \3025 " 1 root root S init\n" \3026 " 2 root root S [kflushd]\n" \3027 " 3 root root S [kupdate]\n" \3028 " 4 root root S [kpiod]\n" \3029 " 5 root root S [kswapd]\n" \3030 " 742 andersen andersen S [bash]\n" \3031 " 743 andersen andersen S -bash\n" \3032 " 745 root root S [getty]\n" \3033 " 2990 andersen andersen R ps\n" \3034 3035 #define pscan_trivial_usage \3036 "[-cb] [-p MIN_PORT] [-P MAX_PORT] [-t TIMEOUT] [-T MIN_RTT] HOST"3037 #define pscan_full_usage "\n\n" \3038 "Scan a host, print all open ports\n" \3039 "\nOptions:" \3040 "\n -c Show closed ports too" \3041 "\n -b Show blocked ports too" \3042 "\n -p Scan from this port (default 1)" \3043 "\n -P Scan up to this port (default 1024)" \3044 "\n -t Timeout (default 5000 ms)" \3045 "\n -T Minimum rtt (default 5 ms, increase for congested hosts)" \3046 3047 #define pwd_trivial_usage \3048 ""3049 #define pwd_full_usage "\n\n" \3050 "Print the full filename of the current working directory"3051 #define pwd_example_usage \3052 "$ pwd\n" \3053 "/root\n"3054 3055 #define raidautorun_trivial_usage \3056 "DEVICE"3057 #define raidautorun_full_usage "\n\n" \3058 "Tell the kernel to automatically search and start RAID arrays"3059 #define raidautorun_example_usage \3060 "$ raidautorun /dev/md0"3061 3062 #define rdate_trivial_usage \3063 "[-sp] HOST"3064 #define rdate_full_usage "\n\n" \3065 "Get and possibly set the system date and time from a remote HOST\n" \3066 "\nOptions:" \3067 "\n -s Set the system date and time (default)" \3068 "\n -p Print the date and time" \3069 3070 #define rdev_trivial_usage \3071 ""3072 #define rdev_full_usage "\n\n" \3073 "Print the device node associated with the filesystem mounted at '/'"3074 #define rdev_example_usage \3075 "$ rdev\n" \3076 "/dev/mtdblock9 /\n"3077 3078 #define readahead_trivial_usage \3079 "[FILE]..."3080 #define readahead_full_usage "\n\n" \3081 "Preload FILEs to RAM"3082 3083 #define readlink_trivial_usage \3084 IF_FEATURE_READLINK_FOLLOW("[-fnv] ") "FILE"3085 #define readlink_full_usage "\n\n" \3086 "Display the value of a symlink" \3087 IF_FEATURE_READLINK_FOLLOW( "\n" \3088 "\nOptions:" \3089 "\n -f Canonicalize by following all symlinks" \3090 "\n -n Don't add newline" \3091 "\n -v Verbose" \3092 ) \3093 3094 #define readprofile_trivial_usage \3095 "[OPTIONS]"3096 #define readprofile_full_usage "\n\n" \3097 "Options:" \3098 "\n -m mapfile (Default: /boot/System.map)" \3099 "\n -p profile (Default: /proc/profile)" \3100 "\n -M NUM Set the profiling multiplier to NUM" \3101 "\n -i Print only info about the sampling step" \3102 "\n -v Verbose" \3103 "\n -a Print all symbols, even if count is 0" \3104 "\n -b Print individual histogram-bin counts" \3105 "\n -s Print individual counters within functions" \3106 "\n -r Reset all the counters (root only)" \3107 "\n -n Disable byte order auto-detection" \3108 3109 #define realpath_trivial_usage \3110 "FILE..."3111 #define realpath_full_usage "\n\n" \3112 "Return the absolute pathnames of given FILE"3113 3114 #define reformime_trivial_usage \3115 "[OPTIONS] [FILE]..."3116 #define reformime_full_usage "\n\n" \3117 "Parse MIME-encoded message\n" \3118 "\nOptions:" \3119 "\n -x PREFIX Extract content of MIME sections to files" \3120 "\n -X PROG ARGS Filter content of MIME sections through PROG" \3121 "\n Must be the last option" \3122 "\n" \3123 "\nOther options are silently ignored" \3124 3125 #define scriptreplay_trivial_usage \3126 "timingfile [typescript [divisor]]"3127 #define scriptreplay_full_usage "\n\n" \3128 "Play back typescripts, using timing information"3129 3130 #define reset_trivial_usage \3131 ""3132 #define reset_full_usage "\n\n" \3133 "Reset the screen"3134 3135 #define resize_trivial_usage \3136 ""3137 #define resize_full_usage "\n\n" \3138 "Resize the screen"3139 3140 #define restorecon_trivial_usage \3141 "[-iFnRv] [-e EXCLUDEDIR]... [-o FILE] [-f FILE]"3142 #define restorecon_full_usage "\n\n" \3143 "Reset security contexts of files in pathname\n" \3144 "\n -i Ignore files that don't exist" \3145 "\n -f FILE File with list of files to process" \3146 "\n -e DIR Directory to exclude" \3147 "\n -R,-r Recurse" \3148 "\n -n Don't change any file labels" \3149 "\n -o FILE Save list of files with incorrect context" \3150 "\n -v Verbose" \3151 "\n -vv Show changed labels" \3152 "\n -F Force reset of context to match file_context" \3153 "\n for customizable files, or the user section," \3154 "\n if it has changed" \3155 3156 #define rfkill_trivial_usage \3157 "COMMAND [INDEX|TYPE]"3158 #define rfkill_full_usage "\n\n" \3159 "Enable/disable wireless devices\n" \3160 "\nCommands:" \3161 "\n list [INDEX|TYPE] List current state" \3162 "\n block INDEX|TYPE Disable device" \3163 "\n unblock INDEX|TYPE Enable device" \3164 "\n" \3165 "\n TYPE: all, wlan(wifi), bluetooth, uwb(ultrawideband)," \3166 "\n wimax, wwan, gps, fm" \3167 3168 #define rm_trivial_usage \3169 "[-irf] FILE..."3170 #define rm_full_usage "\n\n" \3171 "Remove (unlink) FILEs\n" \3172 "\nOptions:" \3173 "\n -i Always prompt before removing" \3174 "\n -f Never prompt" \3175 "\n -R,-r Recurse" \3176 3177 #define rm_example_usage \3178 "$ rm -rf /tmp/foo\n"3179 3180 #define rmdir_trivial_usage \3181 "[OPTIONS] DIRECTORY..."3182 #define rmdir_full_usage "\n\n" \3183 "Remove DIRECTORY if it is empty\n" \3184 "\nOptions:" \3185 IF_FEATURE_RMDIR_LONG_OPTIONS( \3186 "\n -p|--parents Include parents" \3187 "\n --ignore-fail-on-non-empty" \3188 ) \3189 IF_NOT_FEATURE_RMDIR_LONG_OPTIONS( \3190 "\n -p Include parents" \3191 )3192 3193 #define rmdir_example_usage \3194 "# rmdir /tmp/foo\n"3195 3196 #define route_trivial_usage \3197 "[{add|del|delete}]"3198 #define route_full_usage "\n\n" \3199 "Edit kernel routing tables\n" \3200 "\nOptions:" \3201 "\n -n Don't resolve names" \3202 "\n -e Display other/more information" \3203 "\n -A inet" IF_FEATURE_IPV6("{6}") " Select address family" \3204 3205 #define rpm_trivial_usage \3206 "-i PACKAGE.rpm; rpm -qp[ildc] PACKAGE.rpm"3207 #define rpm_full_usage "\n\n" \3208 "Manipulate RPM packages\n" \3209 "\nCommands:" \3210 "\n -i Install package" \3211 "\n -qp Query package" \3212 "\nOptions:" \3213 "\n -i Show information" \3214 "\n -l List contents" \3215 "\n -d List documents" \3216 "\n -c List config files" \3217 3218 #define rpm2cpio_trivial_usage \3219 "package.rpm"3220 #define rpm2cpio_full_usage "\n\n" \3221 "Output a cpio archive of the rpm file"3222 3223 #define rtcwake_trivial_usage \3224 "[-a | -l | -u] [-d DEV] [-m MODE] [-s SEC | -t TIME]"3225 #define rtcwake_full_usage "\n\n" \3226 "Enter a system sleep state until specified wakeup time\n" \3227 IF_LONG_OPTS( \3228 "\n -a,--auto Read clock mode from adjtime" \3229 "\n -l,--local Clock is set to local time" \3230 "\n -u,--utc Clock is set to UTC time" \3231 "\n -d,--device=DEV Specify the RTC device" \3232 "\n -m,--mode=MODE Set the sleep state (default: standby)" \3233 "\n -s,--seconds=SEC Set the timeout in SEC seconds from now" \3234 "\n -t,--time=TIME Set the timeout to TIME seconds from epoch" \3235 ) \3236 IF_NOT_LONG_OPTS( \3237 "\n -a Read clock mode from adjtime" \3238 "\n -l Clock is set to local time" \3239 "\n -u Clock is set to UTC time" \3240 "\n -d DEV Specify the RTC device" \3241 "\n -m MODE Set the sleep state (default: standby)" \3242 "\n -s SEC Set the timeout in SEC seconds from now" \3243 "\n -t TIME Set the timeout to TIME seconds from epoch" \3244 )3245 3246 #define runcon_trivial_usage \3247 "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] PROG ARGS\n" \3248 "runcon CONTEXT PROG ARGS"3249 #define runcon_full_usage "\n\n" \3250 "Run PROG in a different security context\n" \3251 "\n CONTEXT Complete security context\n" \3252 IF_FEATURE_RUNCON_LONG_OPTIONS( \3253 "\n -c,--compute Compute process transition context before modifying" \3254 "\n -t,--type=TYPE Type (for same role as parent)" \3255 "\n -u,--user=USER User identity" \3256 "\n -r,--role=ROLE Role" \3257 "\n -l,--range=RNG Levelrange" \3258 ) \3259 IF_NOT_FEATURE_RUNCON_LONG_OPTIONS( \3260 "\n -c Compute process transition context before modifying" \3261 "\n -t TYPE Type (for same role as parent)" \3262 "\n -u USER User identity" \3263 "\n -r ROLE Role" \3264 "\n -l RNG Levelrange" \3265 )3266 3267 #define run_parts_trivial_usage \3268 "[-t] "IF_FEATURE_RUN_PARTS_FANCY("[-l] ")"[-a ARG] [-u MASK] DIRECTORY"3269 #define run_parts_full_usage "\n\n" \3270 "Run a bunch of scripts in DIRECTORY\n" \3271 "\nOptions:" \3272 "\n -t Print what would be run, but don't actually run anything" \3273 "\n -a ARG Pass ARG as argument for every program" \3274 "\n -u MASK Set the umask to MASK before running every program" \3275 IF_FEATURE_RUN_PARTS_FANCY( \3276 "\n -l Print names of all matching files even if they are not executable" \3277 )3278 3279 #define run_parts_example_usage \3280 "$ run-parts -a start /etc/init.d\n" \3281 "$ run-parts -a stop=now /etc/init.d\n\n" \3282 "Let's assume you have a script foo/dosomething:\n" \3283 "#!/bin/sh\n" \3284 "for i in $*; do eval $i; done; unset i\n" \3285 "case \"$1\" in\n" \3286 "start*) echo starting something;;\n" \3287 "stop*) set -x; shutdown -h $stop;;\n" \3288 "esac\n\n" \3289 "Running this yields:\n" \3290 "$run-parts -a stop=+4m foo/\n" \3291 "+ shutdown -h +4m"3292 3293 #define runlevel_trivial_usage \3294 "[FILE]"3295 #define runlevel_full_usage "\n\n" \3296 "Find the current and previous system runlevel\n" \3297 "\n" \3298 "If no utmp FILE exists or if no runlevel record can be found,\n" \3299 "print \"unknown\""3300 #define runlevel_example_usage \3301 "$ runlevel /var/run/utmp\n" \3302 "N 2"3303 3304 #define runsv_trivial_usage \3305 "DIR"3306 #define runsv_full_usage "\n\n" \3307 "Start and monitor a service and optionally an appendant log service"3308 3309 #define runsvdir_trivial_usage \3310 "[-P] [-s SCRIPT] DIR"3311 #define runsvdir_full_usage "\n\n" \3312 "Start a runsv process for each subdirectory. If it exits, restart it.\n" \3313 "\n -P Put each runsv in a new session" \3314 "\n -s SCRIPT Run SCRIPT <signo> after signal is processed" \3315 3316 #define rx_trivial_usage \3317 "FILE"3318 #define rx_full_usage "\n\n" \3319 "Receive a file using the xmodem protocol"3320 #define rx_example_usage \3321 "$ rx /tmp/foo\n"3322 3323 #define script_trivial_usage \3324 "[-afq" IF_SCRIPTREPLAY("t") "] [-c PROG] [OUTFILE]"3325 #define script_full_usage "\n\n" \3326 "Options:" \3327 "\n -a Append output" \3328 "\n -c PROG Run PROG, not shell" \3329 "\n -f Flush output after each write" \3330 "\n -q Quiet" \3331 IF_SCRIPTREPLAY( \3332 "\n -t Send timing to stderr" \3333 )3334 3335 #define sed_trivial_usage \3336 "[-efinr] SED_CMD [FILE]..."3337 #define sed_full_usage "\n\n" \3338 "Options:" \3339 "\n -e CMD Add CMD to sed commands to be executed" \3340 "\n -f FILE Add FILE contents to sed commands to be executed" \3341 "\n -i Edit files in-place (else sends result to stdout)" \3342 "\n -n Suppress automatic printing of pattern space" \3343 "\n -r Use extended regex syntax" \3344 "\n" \3345 "\nIf no -e or -f, the first non-option argument is the sed command string." \3346 "\nRemaining arguments are input files (stdin if none)."3347 3348 #define sed_example_usage \3349 "$ echo \"foo\" | sed -e 's/f[a-zA-Z]o/bar/g'\n" \3350 "bar\n"3351 3352 #define selinuxenabled_trivial_usage NOUSAGE_STR3353 #define selinuxenabled_full_usage ""3354 3355 #define sendmail_trivial_usage \3356 "[OPTIONS] [RECIPIENT_EMAIL]..."3357 #define sendmail_full_usage "\n\n" \3358 "Read email from stdin and send it\n" \3359 "\nStandard options:" \3360 "\n -t Read additional recipients from message body" \3361 "\n -f sender Sender (required)" \3362 "\n -o options Various options. -oi implied, others are ignored" \3363 "\n -i -oi synonym. implied and ignored" \3364 "\n" \3365 "\nBusybox specific options:" \3366 "\n -w seconds Network timeout" \3367 "\n -H 'PROG ARGS' Run connection helper" \3368 "\n Examples:" \3369 "\n -H 'exec openssl s_client -quiet -tls1 -starttls smtp" \3370 "\n -connect smtp.gmail.com:25' <email.txt" \3371 "\n [4<username_and_passwd.txt | -au<username> -ap<password>]" \3372 "\n -H 'exec openssl s_client -quiet -tls1" \3373 "\n -connect smtp.gmail.com:465' <email.txt" \3374 "\n [4<username_and_passwd.txt | -au<username> -ap<password>]" \3375 "\n -S server[:port] Server" \3376 "\n -au<username> Username for AUTH LOGIN" \3377 "\n -ap<password> Password for AUTH LOGIN" \3378 "\n -am<method> Authentication method. Ignored. LOGIN is implied" \3379 "\n" \3380 "\nOther options are silently ignored; -oi -t is implied" \3381 IF_MAKEMIME( \3382 "\nUse makemime applet to create message with attachments" \3383 )3384 3385 #define seq_trivial_usage \3386 "[-w] [-s SEP] [FIRST [INC]] LAST"3387 #define seq_full_usage "\n\n" \3388 "Print numbers from FIRST to LAST, in steps of INC.\n" \3389 "FIRST, INC default to 1.\n" \3390 "\nOptions:" \3391 "\n -w Pad to last with leading zeros" \3392 "\n -s SEP String separator" \3393 3394 #define sestatus_trivial_usage \3395 "[-vb]"3396 #define sestatus_full_usage "\n\n" \3397 " -v Verbose" \3398 "\n -b Display current state of booleans" \3399 3400 #define setconsole_trivial_usage \3401 "[-r" IF_FEATURE_SETCONSOLE_LONG_OPTIONS("|--reset") "] [DEVICE]"3402 #define setconsole_full_usage "\n\n" \3403 "Redirect system console output to DEVICE (default: /dev/tty)\n" \3404 "\nOptions:" \3405 "\n -r Reset output to /dev/console" \3406 3407 #define setenforce_trivial_usage \3408 "[Enforcing | Permissive | 1 | 0]"3409 #define setenforce_full_usage ""3410 3411 #define setfiles_trivial_usage \3412 "[-dnpqsvW] [-e DIR]... [-o FILE] [-r alt_root_path]" \3413 IF_FEATURE_SETFILES_CHECK_OPTION( \3414 " [-c policyfile] spec_file" \3415 ) \3416 " pathname"3417 #define setfiles_full_usage "\n\n" \3418 "Reset file contexts under pathname according to spec_file\n" \3419 IF_FEATURE_SETFILES_CHECK_OPTION( \3420 "\n -c FILE Check the validity of the contexts against the specified binary policy" \3421 ) \3422 "\n -d Show which specification matched each file" \3423 "\n -l Log changes in file labels to syslog" \3424 "\n -n Don't change any file labels" \3425 "\n -q Suppress warnings" \3426 "\n -r DIR Use an alternate root path" \3427 "\n -e DIR Exclude DIR" \3428 "\n -F Force reset of context to match file_context for customizable files" \3429 "\n -o FILE Save list of files with incorrect context" \3430 "\n -s Take a list of files from stdin (instead of command line)" \3431 "\n -v Show changes in file labels, if type or role are changing" \3432 "\n -vv Show changes in file labels, if type, role, or user are changing" \3433 "\n -W Display warnings about entries that had no matching files" \3434 3435 #define setfont_trivial_usage \3436 "FONT [-m MAPFILE] [-C TTY]"3437 #define setfont_full_usage "\n\n" \3438 "Load a console font\n" \3439 "\nOptions:" \3440 "\n -m MAPFILE Load console screen map" \3441 "\n -C TTY Affect TTY instead of /dev/tty" \3442 3443 #define setfont_example_usage \3444 "$ setfont -m koi8-r /etc/i18n/fontname\n"3445 3446 #define setkeycodes_trivial_usage \3447 "SCANCODE KEYCODE..."3448 #define setkeycodes_full_usage "\n\n" \3449 "Set entries into the kernel's scancode-to-keycode map,\n" \3450 "allowing unusual keyboards to generate usable keycodes.\n\n" \3451 "SCANCODE may be either xx or e0xx (hexadecimal),\n" \3452 "and KEYCODE is given in decimal." \3453 3454 #define setkeycodes_example_usage \3455 "$ setkeycodes e030 127\n"3456 3457 #define setlogcons_trivial_usage \3458 "N"3459 #define setlogcons_full_usage "\n\n" \3460 "Redirect the kernel output to console N (0 for current)"3461 3462 #define setsebool_trivial_usage \3463 "boolean value"3464 3465 #define setsebool_full_usage "\n\n" \3466 "Change boolean setting"3467 3468 #define setsid_trivial_usage \3469 "PROG ARGS"3470 #define setsid_full_usage "\n\n" \3471 "Run PROG in a new session. PROG will have no controlling terminal\n" \3472 "and will not be affected by keyboard signals (Ctrl-C etc).\n" \3473 "See setsid(2) for details." \3474 3475 #define last_trivial_usage \3476 ""IF_FEATURE_LAST_FANCY("[-HW] [-f FILE]")3477 #define last_full_usage "\n\n" \3478 "Show listing of the last users that logged into the system" \3479 IF_FEATURE_LAST_FANCY( "\n" \3480 "\nOptions:" \3481 /* "\n -H Show header line" */ \3482 "\n -W Display with no host column truncation" \3483 "\n -f FILE Read from FILE instead of /var/log/wtmp" \3484 )3485 3486 #define showkey_trivial_usage \3487 "[-a | -k | -s]"3488 #define showkey_full_usage "\n\n" \3489 "Show keys pressed\n" \3490 "\nOptions:" \3491 "\n -a Display decimal/octal/hex values of the keys" \3492 "\n -k Display interpreted keycodes (default)" \3493 "\n -s Display raw scan-codes" \3494 3495 #define slattach_trivial_usage \3496 "[-cehmLF] [-s SPEED] [-p PROTOCOL] DEVICE"3497 #define slattach_full_usage "\n\n" \3498 "Attach network interface(s) to serial line(s)\n" \3499 "\nOptions:" \3500 "\n -p PROT Set protocol (slip, cslip, slip6, clisp6 or adaptive)" \3501 "\n -s SPD Set line speed" \3502 "\n -e Exit after initializing device" \3503 "\n -h Exit when the carrier is lost" \3504 "\n -c PROG Run PROG when the line is hung up" \3505 "\n -m Do NOT initialize the line in raw 8 bits mode" \3506 "\n -L Enable 3-wire operation" \3507 "\n -F Disable RTS/CTS flow control" \3508 3509 #define sleep_trivial_usage \3510 IF_FEATURE_FANCY_SLEEP("[") "N" IF_FEATURE_FANCY_SLEEP("]...")3511 #define sleep_full_usage "\n\n" \3512 IF_NOT_FEATURE_FANCY_SLEEP("Pause for N seconds") \3513 IF_FEATURE_FANCY_SLEEP( \3514 "Pause for a time equal to the total of the args given, where each arg can\n" \3515 "have an optional suffix of (s)econds, (m)inutes, (h)ours, or (d)ays")3516 #define sleep_example_usage \3517 "$ sleep 2\n" \3518 "[2 second delay results]\n" \3519 IF_FEATURE_FANCY_SLEEP( \3520 "$ sleep 1d 3h 22m 8s\n" \3521 "[98528 second delay results]\n")3522 3523 #define sort_trivial_usage \3524 "[-nru" \3525 IF_FEATURE_SORT_BIG("gMcszbdfimSTokt] [-o FILE] [-k start[.offset][opts][,end[.offset][opts]] [-t CHAR") \3526 "] [FILE]..."3527 #define sort_full_usage "\n\n" \3528 "Sort lines of text\n" \3529 "\nOptions:" \3530 IF_FEATURE_SORT_BIG( \3531 "\n -b Ignore leading blanks" \3532 "\n -c Check whether input is sorted" \3533 "\n -d Dictionary order (blank or alphanumeric only)" \3534 "\n -f Ignore case" \3535 "\n -g General numerical sort" \3536 "\n -i Ignore unprintable characters" \3537 "\n -k Sort key" \3538 "\n -M Sort month" \3539 ) \3540 "\n -n Sort numbers" \3541 IF_FEATURE_SORT_BIG( \3542 "\n -o Output to file" \3543 "\n -k Sort by key" \3544 "\n -t CHAR Key separator" \3545 ) \3546 "\n -r Reverse sort order" \3547 IF_FEATURE_SORT_BIG( \3548 "\n -s Stable (don't sort ties alphabetically)" \3549 ) \3550 "\n -u Suppress duplicate lines" \3551 IF_FEATURE_SORT_BIG( \3552 "\n -z Lines are terminated by NUL, not newline" \3553 "\n -mST Ignored for GNU compatibility") \3554 3555 #define sort_example_usage \3556 "$ echo -e \"e\\nf\\nb\\nd\\nc\\na\" | sort\n" \3557 "a\n" \3558 "b\n" \3559 "c\n" \3560 "d\n" \3561 "e\n" \3562 "f\n" \3563 IF_FEATURE_SORT_BIG( \3564 "$ echo -e \"c 3\\nb 2\\nd 2\" | $SORT -k 2,2n -k 1,1r\n" \3565 "d 2\n" \3566 "b 2\n" \3567 "c 3\n" \3568 ) \3569 ""3570 3571 #define split_trivial_usage \3572 "[OPTIONS] [INPUT [PREFIX]]"3573 #define split_full_usage "\n\n" \3574 "Options:" \3575 "\n -b N[k|m] Split by N (kilo|mega)bytes" \3576 "\n -l N Split by N lines" \3577 "\n -a N Use N letters as suffix" \3578 3579 #define split_example_usage \3580 "$ split TODO foo\n" \3581 "$ cat TODO | split -a 2 -l 2 TODO_\n"3582 3583 #define start_stop_daemon_trivial_usage \3584 "[OPTIONS] [-S|-K] ... [-- ARGS...]"3585 #define start_stop_daemon_full_usage "\n\n" \3586 "Search for matching processes, and then\n" \3587 "-K: stop all matching processes.\n" \3588 "-S: start a process unless a matching process is found.\n" \3589 IF_FEATURE_START_STOP_DAEMON_LONG_OPTIONS( \3590 "\nProcess matching:" \3591 "\n -u,--user USERNAME|UID Match only this user's processes" \3592 "\n -n,--name NAME Match processes with NAME" \3593 "\n in comm field in /proc/PID/stat" \3594 "\n -x,--exec EXECUTABLE Match processes with this command" \3595 "\n in /proc/PID/cmdline" \3596 "\n -p,--pidfile FILE Match a process with PID from the file" \3597 "\n All specified conditions must match" \3598 "\n-S only:" \3599 "\n -x,--exec EXECUTABLE Program to run" \3600 "\n -a,--startas NAME Zeroth argument" \3601 "\n -b,--background Background" \3602 IF_FEATURE_START_STOP_DAEMON_FANCY( \3603 "\n -N,--nicelevel N Change nice level" \3604 ) \3605 "\n -c,--chuid USER[:[GRP]] Change to user/group" \3606 "\n -m,--make-pidfile Write PID to the pidfile specified by -p" \3607 "\n-K only:" \3608 "\n -s,--signal SIG Signal to send" \3609 "\n -t,--test Match only, exit with 0 if a process is found" \3610 "\nOther:" \3611 IF_FEATURE_START_STOP_DAEMON_FANCY( \3612 "\n -o,--oknodo Exit with status 0 if nothing is done" \3613 "\n -v,--verbose Verbose" \3614 ) \3615 "\n -q,--quiet Quiet" \3616 ) \3617 IF_NOT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS( \3618 "\nProcess matching:" \3619 "\n -u USERNAME|UID Match only this user's processes" \3620 "\n -n NAME Match processes with NAME" \3621 "\n in comm field in /proc/PID/stat" \3622 "\n -x EXECUTABLE Match processes with this command" \3623 "\n command in /proc/PID/cmdline" \3624 "\n -p FILE Match a process with PID from the file" \3625 "\n All specified conditions must match" \3626 "\n-S only:" \3627 "\n -x EXECUTABLE Program to run" \3628 "\n -a NAME Zeroth argument" \3629 "\n -b Background" \3630 IF_FEATURE_START_STOP_DAEMON_FANCY( \3631 "\n -N N Change nice level" \3632 ) \3633 "\n -c USER[:[GRP]] Change to user/group" \3634 "\n -m Write PID to the pidfile specified by -p" \3635 "\n-K only:" \3636 "\n -s SIG Signal to send" \3637 "\n -t Match only, exit with 0 if a process is found" \3638 "\nOther:" \3639 IF_FEATURE_START_STOP_DAEMON_FANCY( \3640 "\n -o Exit with status 0 if nothing is done" \3641 "\n -v Verbose" \3642 ) \3643 "\n -q Quiet" \3644 ) \3645 3646 #define stat_trivial_usage \3647 "[OPTIONS] FILE..."3648 #define stat_full_usage "\n\n" \3649 "Display file (default) or filesystem status\n" \3650 "\nOptions:" \3651 IF_FEATURE_STAT_FORMAT( \3652 "\n -c fmt Use the specified format" \3653 ) \3654 "\n -f Display filesystem status" \3655 "\n -L Follow links" \3656 "\n -t Display info in terse form" \3657 IF_SELINUX( \3658 "\n -Z Print security context" \3659 ) \3660 IF_FEATURE_STAT_FORMAT( \3661 "\n\nValid format sequences for files:\n" \3662 " %a Access rights in octal\n" \3663 " %A Access rights in human readable form\n" \3664 " %b Number of blocks allocated (see %B)\n" \3665 " %B The size in bytes of each block reported by %b\n" \3666 " %d Device number in decimal\n" \3667 " %D Device number in hex\n" \3668 " %f Raw mode in hex\n" \3669 " %F File type\n" \3670 " %g Group ID of owner\n" \3671 " %G Group name of owner\n" \3672 " %h Number of hard links\n" \3673 " %i Inode number\n" \3674 " %n File name\n" \3675 " %N File name, with -> TARGET if symlink\n" \3676 " %o I/O block size\n" \3677 " %s Total size, in bytes\n" \3678 " %t Major device type in hex\n" \3679 " %T Minor device type in hex\n" \3680 " %u User ID of owner\n" \3681 " %U User name of owner\n" \3682 " %x Time of last access\n" \3683 " %X Time of last access as seconds since Epoch\n" \3684 " %y Time of last modification\n" \3685 " %Y Time of last modification as seconds since Epoch\n" \3686 " %z Time of last change\n" \3687 " %Z Time of last change as seconds since Epoch\n" \3688 "\nValid format sequences for file systems:\n" \3689 " %a Free blocks available to non-superuser\n" \3690 " %b Total data blocks in file system\n" \3691 " %c Total file nodes in file system\n" \3692 " %d Free file nodes in file system\n" \3693 " %f Free blocks in file system\n" \3694 IF_SELINUX( \3695 " %C Security context in selinux\n" \3696 ) \3697 " %i File System ID in hex\n" \3698 " %l Maximum length of filenames\n" \3699 " %n File name\n" \3700 " %s Block size (for faster transfer)\n" \3701 " %S Fundamental block size (for block counts)\n" \3702 " %t Type in hex\n" \3703 " %T Type in human readable form" \3704 ) \3705 3706 #define strings_trivial_usage \3707 "[-afo] [-n LEN] [FILE]..."3708 #define strings_full_usage "\n\n" \3709 "Display printable strings in a binary file\n" \3710 "\nOptions:" \3711 "\n -a Scan whole file (default)" \3712 "\n -f Precede strings with filenames" \3713 "\n -n LEN At least LEN characters form a string (default 4)" \3714 "\n -o Precede strings with decimal offsets" \3715 3716 #define stty_trivial_usage \3717 "[-a|g] [-F DEVICE] [SETTING]..."3718 #define stty_full_usage "\n\n" \3719 "Without arguments, prints baud rate, line discipline,\n" \3720 "and deviations from stty sane\n" \3721 "\nOptions:" \3722 "\n -F DEVICE Open device instead of stdin" \3723 "\n -a Print all current settings in human-readable form" \3724 "\n -g Print in stty-readable form" \3725 "\n [SETTING] See manpage" \3726 3727 #define su_trivial_usage \3728 "[OPTIONS] [-] [USERNAME]"3729 #define su_full_usage "\n\n" \3730 "Change user id or become root\n" \3731 "\nOptions:" \3732 "\n -p,-m Preserve environment" \3733 "\n -c CMD Command to pass to 'sh -c'" \3734 "\n -s SH Shell to use instead of default shell" \3735 3736 #define sulogin_trivial_usage \3737 "[-t N] [TTY]"3738 #define sulogin_full_usage "\n\n" \3739 "Single user login\n" \3740 "\nOptions:" \3741 "\n -t N Timeout" \3742 3743 #define sum_trivial_usage \3744 "[-rs] [FILE]..."3745 #define sum_full_usage "\n\n" \3746 "Checksum and count the blocks in a file\n" \3747 "\nOptions:" \3748 "\n -r Use BSD sum algorithm (1K blocks)" \3749 "\n -s Use System V sum algorithm (512byte blocks)" \3750 3751 #define sv_trivial_usage \3752 "[-v] [-w SEC] CMD SERVICE_DIR..."3753 #define sv_full_usage "\n\n" \3754 "Control services monitored by runsv supervisor.\n" \3755 "Commands (only first character is enough):\n" \3756 "\n" \3757 "status: query service status\n" \3758 "up: if service isn't running, start it. If service stops, restart it\n" \3759 "once: like 'up', but if service stops, don't restart it\n" \3760 "down: send TERM and CONT signals. If ./run exits, start ./finish\n" \3761 " if it exists. After it stops, don't restart service\n" \3762 "exit: send TERM and CONT signals to service and log service. If they exit,\n" \3763 " runsv exits too\n" \3764 "pause, cont, hup, alarm, interrupt, quit, 1, 2, term, kill: send\n" \3765 "STOP, CONT, HUP, ALRM, INT, QUIT, USR1, USR2, TERM, KILL signal to service" \3766 3767 #define svlogd_trivial_usage \3768 "[-ttv] [-r C] [-R CHARS] [-l MATCHLEN] [-b BUFLEN] DIR..."3769 #define svlogd_full_usage "\n\n" \3770 "Continuously read log data from stdin, optionally\n" \3771 "filter log messages, and write the data to one or more automatically\n" \3772 "rotated logs" \3773 3774 #define swapoff_trivial_usage \3775 "[-a] [DEVICE]"3776 #define swapoff_full_usage "\n\n" \3777 "Stop swapping on DEVICE\n" \3778 "\nOptions:" \3779 "\n -a Stop swapping on all swap devices" \3780 3781 #define swapon_trivial_usage \3782 "[-a]" IF_FEATURE_SWAPON_PRI(" [-p PRI]") " [DEVICE]"3783 #define swapon_full_usage "\n\n" \3784 "Start swapping on DEVICE\n" \3785 "\nOptions:" \3786 "\n -a Start swapping on all swap devices" \3787 IF_FEATURE_SWAPON_PRI( \3788 "\n -p PRI Set swap device priority" \3789 ) \3790 3791 #define switch_root_trivial_usage \3792 "[-c /dev/console] NEW_ROOT NEW_INIT [ARGS]"3793 #define switch_root_full_usage "\n\n" \3794 "Free initramfs and switch to another root fs:\n" \3795 "chroot to NEW_ROOT, delete all in /, move NEW_ROOT to /,\n" \3796 "execute NEW_INIT. PID must be 1. NEW_ROOT must be a mountpoint.\n" \3797 "\nOptions:" \3798 "\n -c DEV Reopen stdio to DEV after switch" \3799 3800 #define sync_trivial_usage \3801 ""3802 #define sync_full_usage "\n\n" \3803 "Write all buffered blocks to disk"3804 3805 #define fsync_trivial_usage \3806 "[-d] FILE..."3807 #define fsync_full_usage "\n\n" \3808 "Write files' buffered blocks to disk\n" \3809 "\nOptions:" \3810 "\n -d Avoid syncing metadata"3811 3812 #define sysctl_trivial_usage \3813 "[OPTIONS] [VALUE]..."3814 #define sysctl_full_usage "\n\n" \3815 "Configure kernel parameters at runtime\n" \3816 "\nOptions:" \3817 "\n -n Don't print key names" \3818 "\n -e Don't warn about unknown keys" \3819 "\n -w Change sysctl setting" \3820 "\n -p FILE Load sysctl settings from FILE (default /etc/sysctl.conf)" \3821 "\n -a Display all values" \3822 "\n -A Display all values in table form" \3823 3824 #define sysctl_example_usage \3825 "sysctl [-n] [-e] variable...\n" \3826 "sysctl [-n] [-e] -w variable=value...\n" \3827 "sysctl [-n] [-e] -a\n" \3828 "sysctl [-n] [-e] -p file (default /etc/sysctl.conf)\n" \3829 "sysctl [-n] [-e] -A\n"3830 3831 #define syslogd_trivial_usage \3832 "[OPTIONS]"3833 #define syslogd_full_usage "\n\n" \3834 "System logging utility.\n" \3835 "This version of syslogd ignores /etc/syslog.conf\n" \3836 "\nOptions:" \3837 "\n -n Run in foreground" \3838 "\n -O FILE Log to given file (default:/var/log/messages)" \3839 "\n -l N Set local log level" \3840 "\n -S Smaller logging output" \3841 IF_FEATURE_ROTATE_LOGFILE( \3842 "\n -s SIZE Max size (KB) before rotate (default:200KB, 0=off)" \3843 "\n -b N N rotated logs to keep (default:1, max=99, 0=purge)") \3844 IF_FEATURE_REMOTE_LOG( \3845 "\n -R HOST[:PORT] Log to IP or hostname on PORT (default PORT=514/UDP)" \3846 "\n -L Log locally and via network (default is network only if -R)") \3847 IF_FEATURE_SYSLOGD_DUP( \3848 "\n -D Drop duplicates") \3849 IF_FEATURE_IPC_SYSLOG( \3850 "\n -C[size(KiB)] Log to shared mem buffer (read it using logread)") \3851 /* NB: -Csize shouldn't have space (because size is optional) */3852 /* "\n -m MIN Minutes between MARK lines (default:20, 0=off)" */3853 3854 #define syslogd_example_usage \3855 "$ syslogd -R masterlog:514\n" \3856 "$ syslogd -R 192.168.1.1:601\n"3857 3858 #define tac_trivial_usage \3859 "[FILE]..."3860 #define tac_full_usage "\n\n" \3861 "Concatenate FILEs and print them in reverse"3862 3863 #define taskset_trivial_usage \3864 "[-p] [MASK] [PID | PROG ARGS]"3865 #define taskset_full_usage "\n\n" \3866 "Set or get CPU affinity\n" \3867 "\nOptions:" \3868 "\n -p Operate on an existing PID" \3869 3870 #define taskset_example_usage \3871 "$ taskset 0x7 ./dgemm_test&\n" \3872 "$ taskset -p 0x1 $!\n" \3873 "pid 4790's current affinity mask: 7\n" \3874 "pid 4790's new affinity mask: 1\n" \3875 "$ taskset 0x7 /bin/sh -c './taskset -p 0x1 $$'\n" \3876 "pid 6671's current affinity mask: 1\n" \3877 "pid 6671's new affinity mask: 1\n" \3878 "$ taskset -p 1\n" \3879 "pid 1's current affinity mask: 3\n"3880 3881 #define tee_trivial_usage \3882 "[-ai] [FILE]..."3883 #define tee_full_usage "\n\n" \3884 "Copy stdin to each FILE, and also to stdout\n" \3885 "\nOptions:" \3886 "\n -a Append to the given FILEs, don't overwrite" \3887 "\n -i Ignore interrupt signals (SIGINT)" \3888 3889 #define tee_example_usage \3890 "$ echo \"Hello\" | tee /tmp/foo\n" \3891 "$ cat /tmp/foo\n" \3892 "Hello\n"3893 3894 #if ENABLE_FEATURE_TELNET_AUTOLOGIN3895 #define telnet_trivial_usage \3896 "[-a] [-l USER] HOST [PORT]"3897 #define telnet_full_usage "\n\n" \3898 "Connect to telnet server\n" \3899 "\nOptions:" \3900 "\n -a Automatic login with $USER variable" \3901 "\n -l USER Automatic login as USER" \3902 3903 #else3904 #define telnet_trivial_usage \3905 "HOST [PORT]"3906 #define telnet_full_usage "\n\n" \3907 "Connect to telnet server"3908 #endif3909 3910 #define telnetd_trivial_usage \3911 "[OPTIONS]"3912 #define telnetd_full_usage "\n\n" \3913 "Handle incoming telnet connections" \3914 IF_NOT_FEATURE_TELNETD_STANDALONE(" via inetd") "\n" \3915 "\nOptions:" \3916 "\n -l LOGIN Exec LOGIN on connect" \3917 "\n -f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue" \3918 "\n -K Close connection as soon as login exits" \3919 "\n (normally wait until all programs close slave pty)" \3920 IF_FEATURE_TELNETD_STANDALONE( \3921 "\n -p PORT Port to listen on" \3922 "\n -b ADDR[:PORT] Address to bind to" \3923 "\n -F Run in foreground" \3924 "\n -i Inetd mode" \3925 IF_FEATURE_TELNETD_INETD_WAIT( \3926 "\n -w SEC Inetd 'wait' mode, linger time SEC" \3927 "\n -S Log to syslog (implied by -i or without -F and -w)" \3928 ) \3929 )3930 3931 /* "test --help" does not print help (POSIX compat), only "[ --help" does.3932 * We display "<applet> EXPRESSION ]" here (not "<applet> EXPRESSION")3933 * Unfortunately, it screws up generated BusyBox.html. TODO. */3934 #define test_trivial_usage \3935 "EXPRESSION ]"3936 #define test_full_usage "\n\n" \3937 "Check file types, compare values etc. Return a 0/1 exit code\n" \3938 "depending on logical value of EXPRESSION"3939 #define test_example_usage \3940 "$ test 1 -eq 2\n" \3941 "$ echo $?\n" \3942 "1\n" \3943 "$ test 1 -eq 1\n" \3944 "$ echo $?\n" \3945 "0\n" \3946 "$ [ -d /etc ]\n" \3947 "$ echo $?\n" \3948 "0\n" \3949 "$ [ -d /junk ]\n" \3950 "$ echo $?\n" \3951 "1\n"3952 3953 #define tc_trivial_usage \3954 /*"[OPTIONS] "*/"OBJECT CMD [dev STRING]"3955 #define tc_full_usage "\n\n" \3956 "OBJECT: {qdisc|class|filter}\n" \3957 "CMD: {add|del|change|replace|show}\n" \3958 "\n" \3959 "qdisc [ handle QHANDLE ] [ root |"IF_FEATURE_TC_INGRESS(" ingress |")" parent CLASSID ]\n" \3960 /* "[ estimator INTERVAL TIME_CONSTANT ]\n" */ \3961 " [ [ QDISC_KIND ] [ help | OPTIONS ] ]\n" \3962 " QDISC_KIND := { [p|b]fifo | tbf | prio | cbq | red | etc. }\n" \3963 "qdisc show [ dev STRING ]"IF_FEATURE_TC_INGRESS(" [ingress]")"\n" \3964 "class [ classid CLASSID ] [ root | parent CLASSID ]\n" \3965 " [ [ QDISC_KIND ] [ help | OPTIONS ] ]\n" \3966 "class show [ dev STRING ] [ root | parent CLASSID ]\n" \3967 "filter [ pref PRIO ] [ protocol PROTO ]\n" \3968 /* "\t[ estimator INTERVAL TIME_CONSTANT ]\n" */ \3969 " [ root | classid CLASSID ] [ handle FILTERID ]\n" \3970 " [ [ FILTER_TYPE ] [ help | OPTIONS ] ]\n" \3971 "filter show [ dev STRING ] [ root | parent CLASSID ]"3972 3973 #define tcpsvd_trivial_usage \3974 "[-hEv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] IP PORT PROG"3975 /* with not-implemented options: */3976 /* "[-hpEvv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] [-i DIR|-x CDB] [-t SEC] IP PORT PROG" */3977 #define tcpsvd_full_usage "\n\n" \3978 "Create TCP socket, bind to IP:PORT and listen\n" \3979 "for incoming connection. Run PROG for each connection.\n" \3980 "\n IP IP to listen on. '0' = all" \3981 "\n PORT Port to listen on" \3982 "\n PROG ARGS Program to run" \3983 "\n -l NAME Local hostname (else looks up local hostname in DNS)" \3984 "\n -u USER[:GRP] Change to user/group after bind" \3985 "\n -c N Handle up to N connections simultaneously" \3986 "\n -b N Allow a backlog of approximately N TCP SYNs" \3987 "\n -C N[:MSG] Allow only up to N connections from the same IP." \3988 "\n New connections from this IP address are closed" \3989 "\n immediately. MSG is written to the peer before close" \3990 "\n -h Look up peer's hostname" \3991 "\n -E Don't set up environment variables" \3992 "\n -v Verbose" \3993 3994 #define udpsvd_trivial_usage \3995 "[-hEv] [-c N] [-u USER] [-l NAME] IP PORT PROG"3996 #define udpsvd_full_usage "\n\n" \3997 "Create UDP socket, bind to IP:PORT and wait\n" \3998 "for incoming packets. Run PROG for each packet,\n" \3999 "redirecting all further packets with same peer ip:port to it.\n" \4000 "\n IP IP to listen on. '0' = all" \4001 "\n PORT Port to listen on" \4002 "\n PROG ARGS Program to run" \4003 "\n -l NAME Local hostname (else looks up local hostname in DNS)" \4004 "\n -u USER[:GRP] Change to user/group after bind" \4005 "\n -c N Handle up to N connections simultaneously" \4006 "\n -h Look up peer's hostname" \4007 "\n -E Don't set up environment variables" \4008 "\n -v Verbose" \4009 4010 #define tftp_trivial_usage \4011 "[OPTIONS] HOST [PORT]"4012 #define tftp_full_usage "\n\n" \4013 "Transfer a file from/to tftp server\n" \4014 "\nOptions:" \4015 "\n -l FILE Local FILE" \4016 "\n -r FILE Remote FILE" \4017 IF_FEATURE_TFTP_GET( \4018 "\n -g Get file" \4019 ) \4020 IF_FEATURE_TFTP_PUT( \4021 "\n -p Put file" \4022 ) \4023 IF_FEATURE_TFTP_BLOCKSIZE( \4024 "\n -b SIZE Transfer blocks of SIZE octets" \4025 )4026 4027 #define tftpd_trivial_usage \4028 "[-cr] [-u USER] [DIR]"4029 #define tftpd_full_usage "\n\n" \4030 "Transfer a file on tftp client's request\n" \4031 "\n" \4032 "tftpd should be used as an inetd service.\n" \4033 "tftpd's line for inetd.conf:\n" \4034 " 69 dgram udp nowait root tftpd tftpd /files/to/serve\n" \4035 "It also can be ran from udpsvd:\n" \4036 " udpsvd -vE 0.0.0.0 69 tftpd /files/to/serve\n" \4037 "\nOptions:" \4038 "\n -r Prohibit upload" \4039 "\n -c Allow file creation via upload" \4040 "\n -u Access files as USER" \4041 4042 #define time_trivial_usage \4043 "[-v] PROG ARGS"4044 #define time_full_usage "\n\n" \4045 "Run PROG, display resource usage when it exits\n" \4046 "\nOptions:" \4047 "\n -v Verbose" \4048 4049 #define timeout_trivial_usage \4050 "[-t SECS] [-s SIG] PROG ARGS"4051 #define timeout_full_usage "\n\n" \4052 "Runs PROG. Sends SIG to it if it is not gone in SECS seconds.\n" \4053 "Defaults: SECS: 10, SIG: TERM." \4054 4055 #define top_trivial_usage \4056 "[-b] [-nCOUNT] [-dSECONDS]" IF_FEATURE_TOPMEM(" [-m]")4057 #define top_full_usage "\n\n" \4058 "Provide a view of process activity in real time.\n" \4059 "Read the status of all processes from /proc each SECONDS\n" \4060 "and display a screenful of them." \4061 //TODO: add options and keyboard commands4062 4063 #define touch_trivial_usage \4064 "[-c] [-d DATE] [-r FILE] FILE [FILE]..."4065 #define touch_full_usage "\n\n" \4066 "Update the last-modified date on the given FILE[s]\n" \4067 "\nOptions:" \4068 "\n -c Don't create files" \4069 "\n -d DT Date/time to use" \4070 "\n -r FILE Use FILE's date/time" \4071 4072 #define touch_example_usage \4073 "$ ls -l /tmp/foo\n" \4074 "/bin/ls: /tmp/foo: No such file or directory\n" \4075 "$ touch /tmp/foo\n" \4076 "$ ls -l /tmp/foo\n" \4077 "-rw-rw-r-- 1 andersen andersen 0 Apr 15 01:11 /tmp/foo\n"4078 4079 #define tr_trivial_usage \4080 "[-cds] STRING1 [STRING2]"4081 #define tr_full_usage "\n\n" \4082 "Translate, squeeze, or delete characters from stdin, writing to stdout\n" \4083 "\nOptions:" \4084 "\n -c Take complement of STRING1" \4085 "\n -d Delete input characters coded STRING1" \4086 "\n -s Squeeze multiple output characters of STRING2 into one character" \4087 4088 #define tr_example_usage \4089 "$ echo \"gdkkn vnqkc\" | tr [a-y] [b-z]\n" \4090 "hello world\n"4091 4092 #define traceroute_trivial_usage \4093 "[-"IF_TRACEROUTE6("46")"FIldnrv] [-f 1ST_TTL] [-m MAXTTL] [-p PORT] [-q PROBES]\n" \4094 " [-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-g GATEWAY] [-i IFACE]\n" \4095 " [-z PAUSE_MSEC] HOST [BYTES]"4096 #define traceroute_full_usage "\n\n" \4097 "Trace the route to HOST\n" \4098 "\nOptions:" \4099 IF_TRACEROUTE6( \4100 "\n -4,-6 Force IP or IPv6 name resolution" \4101 ) \4102 "\n -F Set the don't fragment bit" \4103 "\n -I Use ICMP ECHO instead of UDP datagrams" \4104 "\n -l Display the TTL value of the returned packet" \4105 "\n -d Set SO_DEBUG options to socket" \4106 "\n -n Print numeric addresses" \4107 "\n -r Bypass routing tables, send directly to HOST" \4108 "\n -v Verbose" \4109 "\n -m Max time-to-live (max number of hops)" \4110 "\n -p Base UDP port number used in probes" \4111 "\n (default 33434)" \4112 "\n -q Number of probes per TTL (default 3)" \4113 "\n -s IP address to use as the source address" \4114 "\n -t Type-of-service in probe packets (default 0)" \4115 "\n -w Time in seconds to wait for a response (default 3)" \4116 "\n -g Loose source route gateway (8 max)" \4117 4118 #define traceroute6_trivial_usage \4119 "[-dnrv] [-m MAXTTL] [-p PORT] [-q PROBES]\n" \4120 " [-s SRC_IP] [-t TOS] [-w WAIT_SEC] [-i IFACE]\n" \4121 " HOST [BYTES]"4122 #define traceroute6_full_usage "\n\n" \4123 "Trace the route to HOST\n" \4124 "\nOptions:" \4125 "\n -d Set SO_DEBUG options to socket" \4126 "\n -n Print numeric addresses" \4127 "\n -r Bypass routing tables, send directly to HOST" \4128 "\n -v Verbose" \4129 "\n -m Max time-to-live (max number of hops)" \4130 "\n -p Base UDP port number used in probes" \4131 "\n (default is 33434)" \4132 "\n -q Number of probes per TTL (default 3)" \4133 "\n -s IP address to use as the source address" \4134 "\n -t Type-of-service in probe packets (default 0)" \4135 "\n -w Time in seconds to wait for a response (default 3)" \4136 4137 #define true_trivial_usage \4138 ""4139 #define true_full_usage "\n\n" \4140 "Return an exit code of TRUE (0)"4141 #define true_example_usage \4142 "$ true\n" \4143 "$ echo $?\n" \4144 "0\n"4145 4146 #define tty_trivial_usage \4147 ""4148 #define tty_full_usage "\n\n" \4149 "Print file name of stdin's terminal" \4150 IF_INCLUDE_SUSv2( "\n" \4151 "\nOptions:" \4152 "\n -s Print nothing, only return exit status" \4153 )4154 #define tty_example_usage \4155 "$ tty\n" \4156 "/dev/tty2\n"4157 4158 #define ttysize_trivial_usage \4159 "[w] [h]"4160 #define ttysize_full_usage "\n\n" \4161 "Print dimension(s) of stdin's terminal, on error return 80x25"4162 4163 #define tunctl_trivial_usage \4164 "[-f device] ([-t name] | -d name)" IF_FEATURE_TUNCTL_UG(" [-u owner] [-g group] [-b]")4165 #define tunctl_full_usage "\n\n" \4166 "Create or delete tun interfaces\n" \4167 "\nOptions:" \4168 "\n -f name tun device (/dev/net/tun)" \4169 "\n -t name Create iface 'name'" \4170 "\n -d name Delete iface 'name'" \4171 IF_FEATURE_TUNCTL_UG( \4172 "\n -u owner Set iface owner" \4173 "\n -g group Set iface group" \4174 "\n -b Brief output" \4175 )4176 #define tunctl_example_usage \4177 "# tunctl\n" \4178 "# tunctl -d tun0\n"4179 4180 #define udhcpd_trivial_usage \4181 "[-fS]" IF_FEATURE_UDHCP_PORT(" [-P N]") " [CONFFILE]" \4182 4183 #define udhcpd_full_usage "\n\n" \4184 "DHCP server\n" \4185 "\n -f Run in foreground" \4186 "\n -S Log to syslog too" \4187 IF_FEATURE_UDHCP_PORT( \4188 "\n -P N Use port N (default 67)" \4189 )4190 4191 #define umount_trivial_usage \4192 "[OPTIONS] FILESYSTEM|DIRECTORY"4193 #define umount_full_usage "\n\n" \4194 "Unmount file systems\n" \4195 "\nOptions:" \4196 IF_FEATURE_UMOUNT_ALL( \4197 "\n -a Unmount all file systems" IF_FEATURE_MTAB_SUPPORT(" in /etc/mtab") \4198 ) \4199 IF_FEATURE_MTAB_SUPPORT( \4200 "\n -n Don't erase /etc/mtab entries" \4201 ) \4202 "\n -r Try to remount devices as read-only if mount is busy" \4203 "\n -l Lazy umount (detach filesystem)" \4204 "\n -f Force umount (i.e., unreachable NFS server)" \4205 IF_FEATURE_MOUNT_LOOP( \4206 "\n -d Free loop device if it has been used" \4207 )4208 4209 #define umount_example_usage \4210 "$ umount /dev/hdc1\n"4211 4212 #define uname_trivial_usage \4213 "[-amnrspv]"4214 #define uname_full_usage "\n\n" \4215 "Print system information\n" \4216 "\nOptions:" \4217 "\n -a Print all" \4218 "\n -m The machine (hardware) type" \4219 "\n -n Hostname" \4220 "\n -r OS release" \4221 "\n -s OS name (default)" \4222 "\n -p Processor type" \4223 "\n -v OS version" \4224 4225 #define uname_example_usage \4226 "$ uname -a\n" \4227 "Linux debian 2.4.23 #2 Tue Dec 23 17:09:10 MST 2003 i686 GNU/Linux\n"4228 4229 #define uncompress_trivial_usage \4230 "[-cf] [FILE]..."4231 #define uncompress_full_usage "\n\n" \4232 "Decompress .Z file[s]\n" \4233 "\nOptions:" \4234 "\n -c Write to stdout" \4235 "\n -f Overwrite" \4236 4237 #define unexpand_trivial_usage \4238 "[-fa][-t N] [FILE]..."4239 #define unexpand_full_usage "\n\n" \4240 "Convert spaces to tabs, writing to stdout\n" \4241 "\nOptions:" \4242 IF_FEATURE_UNEXPAND_LONG_OPTIONS( \4243 "\n -a,--all Convert all blanks" \4244 "\n -f,--first-only Convert only leading blanks" \4245 "\n -t,--tabs=N Tabstops every N chars" \4246 ) \4247 IF_NOT_FEATURE_UNEXPAND_LONG_OPTIONS( \4248 "\n -a Convert all blanks" \4249 "\n -f Convert only leading blanks" \4250 "\n -t N Tabstops every N chars" \4251 )4252 4253 #define uniq_trivial_usage \4254 "[-cdu][-f,s,w N] [INPUT [OUTPUT]]"4255 #define uniq_full_usage "\n\n" \4256 "Discard duplicate lines\n" \4257 "\nOptions:" \4258 "\n -c Prefix lines by the number of occurrences" \4259 "\n -d Only print duplicate lines" \4260 "\n -u Only print unique lines" \4261 "\n -f N Skip first N fields" \4262 "\n -s N Skip first N chars (after any skipped fields)" \4263 "\n -w N Compare N characters in line" \4264 4265 #define uniq_example_usage \4266 "$ echo -e \"a\\na\\nb\\nc\\nc\\na\" | sort | uniq\n" \4267 "a\n" \4268 "b\n" \4269 "c\n"4270 4271 #define unzip_trivial_usage \4272 "[-opts[modifiers]] FILE[.zip] [LIST] [-x XLIST] [-d DIR]"4273 #define unzip_full_usage "\n\n" \4274 "Extract files from ZIP archives\n" \4275 "\nOptions:" \4276 "\n -l List archive contents (with -q for short form)" \4277 "\n -n Never overwrite files (default)" \4278 "\n -o Overwrite" \4279 "\n -p Send output to stdout" \4280 "\n -q Quiet" \4281 "\n -x XLST Exclude these files" \4282 "\n -d DIR Extract files into DIR" \4283 4284 #define uptime_trivial_usage \4285 ""4286 #define uptime_full_usage "\n\n" \4287 "Display the time since the last boot"4288 4289 #define uptime_example_usage \4290 "$ uptime\n" \4291 " 1:55pm up 2:30, load average: 0.09, 0.04, 0.00\n"4292 4293 #define usleep_trivial_usage \4294 "N"4295 #define usleep_full_usage "\n\n" \4296 "Pause for N microseconds"4297 4298 #define usleep_example_usage \4299 "$ usleep 1000000\n" \4300 "[pauses for 1 second]\n"4301 4302 #define uudecode_trivial_usage \4303 "[-o OUTFILE] [INFILE]"4304 #define uudecode_full_usage "\n\n" \4305 "Uudecode a file\n" \4306 "Finds outfile name in uuencoded source unless -o is given"4307 4308 #define uudecode_example_usage \4309 "$ uudecode -o busybox busybox.uu\n" \4310 "$ ls -l busybox\n" \4311 "-rwxr-xr-x 1 ams ams 245264 Jun 7 21:35 busybox\n"4312 4313 #define uuencode_trivial_usage \4314 "[-m] [INFILE] STORED_FILENAME"4315 #define uuencode_full_usage "\n\n" \4316 "Uuencode a file to stdout\n" \4317 "\nOptions:" \4318 "\n -m Use base64 encoding per RFC1521" \4319 4320 #define uuencode_example_usage \4321 "$ uuencode busybox busybox\n" \4322 "begin 755 busybox\n" \4323 "<encoded file snipped>\n" \4324 "$ uudecode busybox busybox > busybox.uu\n" \4325 "$\n"4326 4327 #define vconfig_trivial_usage \4328 "COMMAND [OPTIONS]"4329 #define vconfig_full_usage "\n\n" \4330 "Create and remove virtual ethernet devices\n" \4331 "\nOptions:" \4332 "\n add [interface-name] [vlan_id]" \4333 "\n rem [vlan-name]" \4334 "\n set_flag [interface-name] [flag-num] [0 | 1]" \4335 "\n set_egress_map [vlan-name] [skb_priority] [vlan_qos]" \4336 "\n set_ingress_map [vlan-name] [skb_priority] [vlan_qos]" \4337 "\n set_name_type [name-type]" \4338 4339 #define vi_trivial_usage \4340 "[OPTIONS] [FILE]..."4341 #define vi_full_usage "\n\n" \4342 "Edit FILE\n" \4343 "\nOptions:" \4344 IF_FEATURE_VI_COLON( \4345 "\n -c Initial command to run ($EXINIT also available)" \4346 ) \4347 IF_FEATURE_VI_READONLY( \4348 "\n -R Read-only" \4349 ) \4350 "\n -H Short help regarding available features" \4351 4352 #define vlock_trivial_usage \4353 "[-a]"4354 #define vlock_full_usage "\n\n" \4355 "Lock a virtual terminal. A password is required to unlock.\n" \4356 "\nOptions:" \4357 "\n -a Lock all VTs" \4358 4359 #define volname_trivial_usage \4360 "[DEVICE]"4361 #define volname_full_usage "\n\n" \4362 "Show CD volume name of the DEVICE (default /dev/cdrom)"4363 4364 #define wall_trivial_usage \4365 "[FILE]"4366 #define wall_full_usage "\n\n" \4367 "Write content of FILE or stdin to all logged-in users"4368 #define wall_sample_usage \4369 "echo foo | wall\n" \4370 "wall ./mymessage"4371 4372 #define watch_trivial_usage \4373 "[-n SEC] [-t] PROG ARGS"4374 #define watch_full_usage "\n\n" \4375 "Run PROG periodically\n" \4376 "\nOptions:" \4377 "\n -n Loop period in seconds (default 2)" \4378 "\n -t Don't print header" \4379 4380 #define watch_example_usage \4381 "$ watch date\n" \4382 "Mon Dec 17 10:31:40 GMT 2000\n" \4383 "Mon Dec 17 10:31:42 GMT 2000\n" \4384 "Mon Dec 17 10:31:44 GMT 2000"4385 4386 #define watchdog_trivial_usage \4387 "[-t N[ms]] [-T N[ms]] [-F] DEV"4388 #define watchdog_full_usage "\n\n" \4389 "Periodically write to watchdog device DEV\n" \4390 "\nOptions:" \4391 "\n -T N Reboot after N seconds if not reset (default 60)" \4392 "\n -t N Reset every N seconds (default 30)" \4393 "\n -F Run in foreground" \4394 "\n" \4395 "\nUse 500ms to specify period in milliseconds" \4396 4397 #define wget_trivial_usage \4398 IF_FEATURE_WGET_LONG_OPTIONS( \4399 "[-c|--continue] [-s|--spider] [-q|--quiet] [-O|--output-document FILE]\n" \4400 " [--header 'header: value'] [-Y|--proxy on/off] [-P DIR]\n" \4401 " [--no-check-certificate] [-U|--user-agent AGENT]" \4402 IF_FEATURE_WGET_TIMEOUT("[-T SEC] ") " URL" \4403 ) \4404 IF_NOT_FEATURE_WGET_LONG_OPTIONS( \4405 "[-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT]" \4406 IF_FEATURE_WGET_TIMEOUT("[-T SEC] ") " URL" \4407 )4408 #define wget_full_usage "\n\n" \4409 "Retrieve files via HTTP or FTP\n" \4410 "\nOptions:" \4411 "\n -s Spider mode - only check file existence" \4412 "\n -c Continue retrieval of aborted transfer" \4413 "\n -q Quiet" \4414 "\n -P DIR Save to DIR (default .)" \4415 IF_FEATURE_WGET_TIMEOUT( \4416 "\n -T SEC Network read timeout is SEC seconds" \4417 ) \4418 "\n -O FILE Save to FILE ('-' for stdout)" \4419 "\n -U STR Use STR for User-Agent header" \4420 "\n -Y Use proxy ('on' or 'off')" \4421 4422 #define which_trivial_usage \4423 "[COMMAND]..."4424 #define which_full_usage "\n\n" \4425 "Locate a COMMAND"4426 #define which_example_usage \4427 "$ which login\n" \4428 "/bin/login\n"4429 4430 #define who_trivial_usage \4431 "[-a]"4432 #define who_full_usage "\n\n" \4433 "Show who is logged on\n" \4434 "\nOptions:" \4435 "\n -a Show all" \4436 4437 #define whoami_trivial_usage \4438 ""4439 #define whoami_full_usage "\n\n" \4440 "Print the user name associated with the current effective user id"4441 4442 #define zcat_trivial_usage \4443 "FILE"4444 #define zcat_full_usage "\n\n" \4445 "Decompress to stdout"4446 4447 #define zcip_trivial_usage \4448 "[OPTIONS] IFACE SCRIPT"4449 #define zcip_full_usage "\n\n" \4450 "Manage a ZeroConf IPv4 link-local address\n" \4451 "\nOptions:" \4452 "\n -f Run in foreground" \4453 "\n -q Quit after obtaining address" \4454 "\n -r 169.254.x.x Request this address first" \4455 "\n -v Verbose" \4456 "\n" \4457 "\nWith no -q, runs continuously monitoring for ARP conflicts," \4458 "\nexits only on I/O errors (link down etc)" \4459 4460 4461 #endif
Note:
See TracChangeset
for help on using the changeset viewer.