b9eb0233a9
-Erik
4293 lines
65 KiB
Plaintext
4293 lines
65 KiB
Plaintext
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [...]>
|
|
<book id="BusyBoxDocumentation">
|
|
<bookinfo>
|
|
<title>BusyBox - The Swiss Army Knife of Embedded Linux</title>
|
|
|
|
<legalnotice>
|
|
<para>
|
|
This documentation is free software; you can redistribute
|
|
it and/or modify it under the terms of the GNU General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2 of the License, or (at your option) any later
|
|
version.
|
|
</para>
|
|
|
|
<para>
|
|
This program is distributed in the hope that it will be
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
See the GNU General Public License for more details.
|
|
</para>
|
|
|
|
<para>
|
|
You should have received a copy of the GNU General Public
|
|
License along with this program; if not, write to the Free
|
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
MA 02111-1307 USA
|
|
</para>
|
|
|
|
<para>
|
|
For more details see the file COPYING in the source
|
|
distribution of Linux.
|
|
</para>
|
|
</legalnotice>
|
|
</bookinfo>
|
|
|
|
<toc></toc>
|
|
<chapter id="Introduction">
|
|
<title>Introduction</title>
|
|
|
|
<para>
|
|
BusyBox combines tiny versions of many common UNIX utilities into a single
|
|
small executable. It provides minimalist replacements for most of the
|
|
utilities you usually find in fileutils, shellutils, findutils, textutils,
|
|
grep, gzip, tar, etc. BusyBox provides a fairly complete POSIX environment
|
|
for any small or embedded system. The utilities in BusyBox generally have
|
|
fewer options than their full-featured GNU cousins; however, the options
|
|
that are included provide the expected functionality and behave very much
|
|
like their GNU counterparts.
|
|
</para>
|
|
|
|
<para>
|
|
BusyBox has been written with size-optimization and limited resources in
|
|
mind. It is also extremely modular so you can easily include or exclude
|
|
commands (or features) at compile time. This makes it easy to customize
|
|
your embedded systems. To create a working system, just add a kernel, a
|
|
shell (such as ash), and an editor (such as elvis-tiny or ae).
|
|
</para>
|
|
</chapter>
|
|
|
|
<chapter id="Syntax">
|
|
<title>How to use BusyBox</title>
|
|
<sect1 id="How to use BusyBox">
|
|
<title>Syntax</title
|
|
|
|
<para>
|
|
<screen>
|
|
BusyBox <function> [arguments...] # or
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
<function> [arguments...] # if symlinked
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="Invoking BusyBox">
|
|
<para>
|
|
When you create a link to BusyBox for the function you wish to use, when
|
|
BusyBox is called using that link it will behave as if the command itself
|
|
has been invoked.
|
|
</para>
|
|
|
|
<para>
|
|
For example, entering
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
ln -s ./BusyBox ls
|
|
./ls
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
will cause BusyBox to behave as 'ls' (if the 'ls' command has been compiled
|
|
into BusyBox).
|
|
</para>
|
|
|
|
<para>
|
|
You can also invoke BusyBox by issuing the command as an argument on the
|
|
command line. For example, entering
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
./BusyBox ls
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
will also cause BusyBox to behave as 'ls'.
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="Common options">
|
|
<para>
|
|
Most BusyBox commands support the <emphasis>--help</emphasis> option to provide
|
|
a terse runtime description of their behavior.
|
|
</para>
|
|
</sect1>
|
|
</chapter>
|
|
|
|
<chapter id="Commands">
|
|
<title>BusyBox Commands</title>
|
|
<sect1 id="Available BusyBox Commands">
|
|
<title>Available BusyBox Commands</title>
|
|
<para>
|
|
Currently defined functions include:
|
|
</para>
|
|
|
|
<para>
|
|
ar, basename, cat, chgrp, chmod, chown, chroot, chvt, clear, cp, cut, date,
|
|
dc, dd, deallocvt, df, dirname, dmesg, du, dutmp, echo, false, fbset,
|
|
fdflush, find, free, freeramdisk, fsck.minix, grep, gunzip, gzip, halt,
|
|
head, hostid, hostname, id, init, insmod, kill, killall, length, ln,
|
|
loadacm, loadfont, loadkmap, logger, logname, ls, lsmod, makedevs, mkdir,
|
|
mkfifo, mkfs.minix, mknod, mkswap, mktemp, more, mount, mt, mv, nc,
|
|
nslookup, ping, poweroff, printf, ps, pwd, reboot, rm, rmdir, rmmod, sed,
|
|
setkeycodes, sfdisk, sh, sleep, sort, swapoff, swapon, sync, syslogd, tail,
|
|
tar, tee, telnet, test, touch, tr, true, tty, umount, uname, uniq, update,
|
|
uptime, usleep, uudecode, uuencode, wc, which, whoami, yes, zcat, [
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="ar">
|
|
<title>ar</title>
|
|
|
|
<para>
|
|
Usage: ar [OPTION] archive [FILENAME]...
|
|
</para>
|
|
|
|
<para>
|
|
Extract or list files from an ar archive.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
o Preserve original dates
|
|
p Extract to stdout
|
|
t List
|
|
x Extract
|
|
v Verbosely list files processed
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="basename">
|
|
<title>basename</title>
|
|
<para>
|
|
Usage: basename FILE [SUFFIX]
|
|
</para>
|
|
|
|
<para>
|
|
Strip directory path and suffixes from FILE. If specified, also removes
|
|
any trailing SUFFIX.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ basename /usr/local/bin/foo
|
|
foo
|
|
$ basename /usr/local/bin/
|
|
bin
|
|
$ basename /foo/bar.txt .txt
|
|
bar
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="cat">
|
|
<title>cat</title>
|
|
|
|
<para>
|
|
Usage: cat [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Concatenate <literal>FILE(s)</literal> and prints them to the standard
|
|
output.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ cat /proc/uptime
|
|
110716.72 17.67
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="chgrp">
|
|
<title>chgrp</title>
|
|
|
|
<para>
|
|
Usage: chgrp [OPTION]... GROUP FILE...
|
|
</para>
|
|
|
|
<para>
|
|
Change the group membership of each FILE to GROUP.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-R Change files and directories recursively
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -l /tmp/foo
|
|
-r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo
|
|
$ chgrp root /tmp/foo
|
|
$ ls -l /tmp/foo
|
|
-r--r--r-- 1 andersen root 0 Apr 12 18:25 /tmp/foo
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="chmod">
|
|
<title>chmod</title>
|
|
|
|
<para>
|
|
Usage: chmod [<emphasis>-R</emphasis>] MODE[,MODE]... FILE...
|
|
</para>
|
|
|
|
<para>
|
|
Change file access permissions for the specified
|
|
<literal>FILE(s)</literal> (or directories). Each MODE is defined by
|
|
combining the letters for WHO has access to the file, an OPERATOR for
|
|
selecting how the permissions should be changed, and a PERMISSION for
|
|
<literal>FILE(s)</literal> (or directories).
|
|
</para>
|
|
|
|
<para>
|
|
WHO may be chosen from
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
u User who owns the file
|
|
g Users in the file's Group
|
|
o Other users not in the file's group
|
|
a All users
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
OPERATOR may be chosen from
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
+ Add a permission
|
|
- Remove a permission
|
|
= Assign a permission
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
PERMISSION may be chosen from
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
r Read
|
|
w Write
|
|
x Execute (or access for directories)
|
|
s Set user (or group) ID bit
|
|
t Sticky bit (for directories prevents removing files by non-owners)
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Alternately, permissions can be set numerically where the first three
|
|
numbers are calculated by adding the octal values, such as
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
4 Read
|
|
2 Write
|
|
1 Execute
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
An optional fourth digit can also be used to specify
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
4 Set user ID
|
|
2 Set group ID
|
|
1 Sticky bit
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-R Change files and directories recursively.
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -l /tmp/foo
|
|
-rw-rw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo
|
|
$ chmod u+x /tmp/foo
|
|
$ ls -l /tmp/foo
|
|
-rwxrw-r-- 1 root root 0 Apr 12 18:25 /tmp/foo*
|
|
$ chmod 444 /tmp/foo
|
|
$ ls -l /tmp/foo
|
|
-r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="chown">
|
|
<title>chown</title>
|
|
<para>
|
|
Usage: chown [OPTION]... OWNER[<.|:>[GROUP] FILE...
|
|
</para>
|
|
|
|
<para>
|
|
Change the owner and/or group of each FILE to OWNER and/or GROUP.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-R Change files and directories recursively
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -l /tmp/foo
|
|
-r--r--r-- 1 andersen andersen 0 Apr 12 18:25 /tmp/foo
|
|
$ chown root /tmp/foo
|
|
$ ls -l /tmp/foo
|
|
-r--r--r-- 1 root andersen 0 Apr 12 18:25 /tmp/foo
|
|
$ chown root.root /tmp/foo
|
|
ls -l /tmp/foo
|
|
-r--r--r-- 1 root root 0 Apr 12 18:25 /tmp/foo
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="chroot">
|
|
<title>chroot</title>
|
|
<para>
|
|
Usage: chroot NEWROOT [COMMAND...]
|
|
</para>
|
|
|
|
<para>
|
|
Run COMMAND with root directory set to NEWROOT.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -l /bin/ls
|
|
lrwxrwxrwx 1 root root 12 Apr 13 00:46 /bin/ls -> /BusyBox
|
|
$ mount /dev/hdc1 /mnt -t minix
|
|
$ chroot /mnt
|
|
$ ls -l /bin/ls
|
|
-rwxr-xr-x 1 root root 40816 Feb 5 07:45 /bin/ls*
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="chvt">
|
|
<title>chvt</title>
|
|
<para>
|
|
Usage: chvt N
|
|
</para>
|
|
|
|
<para>
|
|
Change the foreground virtual terminal to /dev/ttyN
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="clear">
|
|
<title>clear</title>
|
|
|
|
<para>
|
|
Usage: clear
|
|
</para>
|
|
|
|
<para>
|
|
Clear the screen.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="cp">
|
|
<title>cp</title>
|
|
|
|
<para>
|
|
Usage: cp [OPTION]... SOURCE DEST
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
or: cp [OPTION]... SOURCE... DIRECTORY
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Copy SOURCE to DEST, or multiple <literal>SOURCE(s)</literal> to
|
|
DIRECTORY.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Same as -dpR
|
|
-d Preserve links
|
|
-p Preserve file attributes if possible
|
|
-R Copy directories recursively
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="cut">
|
|
<title>cut</title>
|
|
|
|
<para>
|
|
Usage: cut [OPTION]... [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Print selected fields from each input FILE to standard output.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-b LIST Output only bytes from LIST
|
|
-c LIST Output only characters from LIST
|
|
-d CHAR Use CHAR instead of tab as the field delimiter
|
|
-s Only output Lines if the include DELIM
|
|
-f N Print only these fields
|
|
-n Ignored
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo "Hello world" | cut -f 1 -d ' '
|
|
Hello
|
|
$ echo "Hello world" | cut -f 2 -d ' '
|
|
world
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="date">
|
|
<title>date</title>
|
|
|
|
<para>
|
|
Usage: date [OPTION]... [+FORMAT]
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
or: date [OPTION] [MMDDhhmm[[CC]YY][.ss]]
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Display the current time in the given FORMAT, or set the system date.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-R Output RFC-822 compliant date string
|
|
-s Set time described by STRING
|
|
-u Print or set Coordinated Universal Time
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ date
|
|
Wed Apr 12 18:52:41 MDT 2000
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="dc">
|
|
<title>dc</title>
|
|
|
|
<para>
|
|
Usage: dc [EXPRESSION]
|
|
</para>
|
|
|
|
<para>
|
|
This is a Tiny RPN calculator that understands the
|
|
following operations: +, -, /, *, and, or, not, eor. If
|
|
no arguments are given, dc will process input from
|
|
stdin.
|
|
</para>
|
|
|
|
<para>
|
|
The behaviour of BusyBox/dc deviates (just a little ;-)
|
|
from GNU/dc, but this will be remedied in the future.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ dc 2 2 +
|
|
4
|
|
$ dc 8 8 \* 2 2 + /
|
|
16
|
|
$ dc 0 1 and
|
|
0
|
|
$ dc 0 1 or
|
|
1
|
|
$ echo 72 9 div 8 mul | dc
|
|
64
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="dd">
|
|
<title>dd</title>
|
|
|
|
<para>
|
|
Usage: dd [OPTION]...
|
|
</para>
|
|
|
|
<para>
|
|
Copy a file, converting and formatting according to
|
|
options.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
if=FILE Read from FILE instead of stdin
|
|
of=FILE Write to FILE instead of stdout
|
|
bs=N Read and write N bytes at a time
|
|
count=N Copy only N input blocks
|
|
skip=N Skip N input blocks
|
|
seek=N Skip N output blocks
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Numbers may be suffixed by w (x2), k (x1024), b (x512),
|
|
or M (x1024^2).
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ dd if=/dev/zero of=/dev/ram1 bs=1M count=4
|
|
4+0 records in
|
|
4+0 records out
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="deallocvt">
|
|
<title>deallocvt</title>
|
|
|
|
<para>
|
|
Usage: deallocvt N
|
|
</para>
|
|
|
|
<para>
|
|
Deallocate unused virtual terminal /dev/ttyN.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="df">
|
|
<title>df</title>
|
|
|
|
<para>
|
|
Usage: df [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Print the filesystem space used and space available.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ df
|
|
Filesystem 1k-blocks Used Available Use% Mounted on
|
|
/dev/sda3 8690864 8553540 137324 98% /
|
|
/dev/sda1 64216 36364 27852 57% /boot
|
|
$ df /dev/sda3
|
|
Filesystem 1k-blocks Used Available Use% Mounted on
|
|
/dev/sda3 8690864 8553540 137324 98% /
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="dirname">
|
|
<title>dirname</title>
|
|
|
|
<para>
|
|
Usage: dirname NAME
|
|
</para>
|
|
|
|
<para>
|
|
Strip non-directory suffix from NAME.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ dirname /tmp/foo
|
|
/tmp
|
|
$ dirname /tmp/foo/
|
|
/tmp
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="dmesg">
|
|
<title>dmesg</title>
|
|
|
|
<para>
|
|
Usage: dmesg [OPTION]...
|
|
</para>
|
|
|
|
<para>
|
|
Print or control the kernel ring buffer.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c Clear the ring buffer after printing
|
|
-n LEVEL Set the console logging level to LEVEL
|
|
-s BUFSIZE Query ring buffer using a buffer of BUFSIZE
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="du">
|
|
<title>du</title>
|
|
|
|
<para>
|
|
Usage: du [OPTION]... [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Summarize the disk space used for each FILE or current
|
|
directory. Disk space printed in units of 1k (i.e.
|
|
1024 bytes).
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-l Count sizes many times if hard linked
|
|
-s Display only a total for each argument
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ du
|
|
16 ./CVS
|
|
12 ./kernel-patches/CVS
|
|
80 ./kernel-patches
|
|
12 ./tests/CVS
|
|
36 ./tests
|
|
12 ./scripts/CVS
|
|
16 ./scripts
|
|
12 ./docs/CVS
|
|
104 ./docs
|
|
2417 .
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="dutmp">
|
|
<title>dutmp</title>
|
|
|
|
<para>
|
|
Usage: dutmp [FILE]
|
|
</para>
|
|
|
|
<para>
|
|
Dump utmp file format (pipe delimited) from FILE or
|
|
stdin to stdout.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ dutmp /var/run/utmp
|
|
8|7||si|||0|0|0|955637625|760097|0
|
|
2|0|~|~~|reboot||0|0|0|955637625|782235|0
|
|
1|20020|~|~~|runlevel||0|0|0|955637625|800089|0
|
|
8|125||l4|||0|0|0|955637629|998367|0
|
|
6|245|tty1|1|LOGIN||0|0|0|955637630|998974|0
|
|
6|246|tty2|2|LOGIN||0|0|0|955637630|999498|0
|
|
7|336|pts/0|vt00andersen|andersen|:0.0|0|0|0|955637763|0|0
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="echo">
|
|
<title>echo</title>
|
|
|
|
<para>
|
|
Usage: echo [OPTION]... [ARG]...
|
|
</para>
|
|
|
|
<para>
|
|
Print ARGs to stdout.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-n Suppress trailing newline
|
|
-e Enable interpretation of escaped characters
|
|
-E Disable interpretation of escaped characters
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo "Erik is cool"
|
|
Erik is cool
|
|
$ echo -e "Erik\nis\ncool"
|
|
Erik
|
|
is
|
|
cool
|
|
$ echo "Erik\nis\ncool"
|
|
Erik\nis\ncool
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="false">
|
|
<title>false</title>
|
|
|
|
<para>
|
|
Usage: false
|
|
</para>
|
|
|
|
<para>
|
|
Returns an exit code of FALSE (1).
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ false
|
|
$ echo $?
|
|
1
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="fbset">
|
|
<title>fbset</title>
|
|
|
|
<para>
|
|
Usage: fbset [OPTION]... [MODE]
|
|
</para>
|
|
|
|
<para>
|
|
Show and modify frame buffer device settings.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-h Display option summary
|
|
-fb DEVICE Operate on DEVICE
|
|
-db FILE Use FILE for mode database
|
|
-g XRES YRES VXRES VYRES DEPTH Set all geometry parameters
|
|
-t PIXCLOCK LEFT RIGHT UPPER LOWER HSLEN VSLEN Set all timing parameters
|
|
-xres RES Set visible horizontal resolution
|
|
-yres RES Set visible vertical resolution
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ fbset
|
|
mode "1024x768-76"
|
|
# D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz
|
|
geometry 1024 768 1024 768 16
|
|
timings 12714 128 32 16 4 128 4
|
|
accel false
|
|
rgba 5/11,6/5,5/0,0/0
|
|
endmode
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="fdflush">
|
|
<title>fdflush</title>
|
|
|
|
<para>
|
|
Usage: fdflush DEVICE
|
|
</para>
|
|
|
|
<para>
|
|
Force floppy disk drive to detect disk change on DEVICE.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="find">
|
|
<title>find</title>
|
|
|
|
<para>
|
|
Usage: find [PATH]... [EXPRESSION]
|
|
</para>
|
|
|
|
<para>
|
|
Search for files in a directory hierarchy. The default
|
|
PATH is the current directory; default EXPRESSION is
|
|
'-print'.
|
|
</para>
|
|
|
|
<para>
|
|
EXPRESSION may consist of:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-follow Dereference symbolic links
|
|
-name PATTERN File name (leading directories removed) matches PATTERN
|
|
-print Print the full file name followed by a newline to stdout
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ find / -name /etc/passwd
|
|
/etc/passwd
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="free">
|
|
<title>free</title>
|
|
|
|
<para>
|
|
Usage: free
|
|
</para>
|
|
|
|
<para>
|
|
Displays the amount of free and used system memory.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ free
|
|
total used free shared buffers
|
|
Mem: 257628 248724 8904 59644 93124
|
|
Swap: 128516 8404 120112
|
|
Total: 386144 257128 129016
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="freeramdisk">
|
|
<title>freeramdisk</title>
|
|
|
|
<para>
|
|
Usage: freeramdisk DEVICE
|
|
</para>
|
|
|
|
<para>
|
|
Free all memory used by the ramdisk DEVICE.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ freeramdisk /dev/ram2
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="fsck.minix">
|
|
<title>fsck.minix</title>
|
|
|
|
<para>
|
|
Usage: fsck.minix [OPTION]... DEVICE
|
|
</para>
|
|
|
|
<para>
|
|
Perform a consistency check on the MINIX filesystem on
|
|
DEVICE.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-l List all filenames
|
|
-r Perform interactive repairs
|
|
-a Perform automatic repairs
|
|
-v Verbose
|
|
-s Output super-block information
|
|
-m Activate MINIX-like "mode not cleared" warnings
|
|
-f Force file system check.
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="grep">
|
|
<title>grep</title>
|
|
|
|
<para>
|
|
Usage: grep [OPTIONS]... PATTERN [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Search for PATTERN in each FILE or stdin.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-h Suppress the prefixing filename on output
|
|
-i Ignore case distinctions
|
|
-n Print line number with output lines
|
|
-q Be quiet. Returns 0 if result was found, 1 otherwise
|
|
-v Select non-matching lines
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
This version of grep matches full regular expressions.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ grep root /etc/passwd
|
|
root:x:0:0:root:/root:/bin/bash
|
|
$ grep ^[rR]oo. /etc/passwd
|
|
root:x:0:0:root:/root:/bin/bash
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="gunzip">
|
|
<title>gunzip</title>
|
|
|
|
<para>
|
|
Usage: gunzip [OPTION]... FILE
|
|
</para>
|
|
|
|
<para>
|
|
Uncompress FILE (or stdin if FILE is '-').
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c Write output to standard output
|
|
-t Test compressed file integrity
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -la /tmp/BusyBox*
|
|
-rw-rw-r-- 1 andersen andersen 557009 Apr 11 10:55 /tmp/BusyBox-0.43.tar.gz
|
|
$ gunzip /tmp/BusyBox-0.43.tar.gz
|
|
$ ls -la /tmp/BusyBox*
|
|
-rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
< <sect1 id="gzip">
|
|
<title>gzip</title>
|
|
|
|
<para>
|
|
Usage: gzip [OPTION]... FILE
|
|
</para>
|
|
|
|
<para>
|
|
Compress FILE (or stdin if FILE is '-') with maximum
|
|
compression to FILE.gz (or stdout if FILE is '-').
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c Write output to standard output
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -la /tmp/BusyBox*
|
|
-rw-rw-r-- 1 andersen andersen 1761280 Apr 14 17:47 /tmp/BusyBox-0.43.tar
|
|
$ gzip /tmp/BusyBox-0.43.tar
|
|
$ ls -la /tmp/BusyBox*
|
|
-rw-rw-r-- 1 andersen andersen 554058 Apr 14 17:49 /tmp/BusyBox-0.43.tar.gz
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="halt">
|
|
<title>halt</title>
|
|
|
|
<para>
|
|
Usage: halt
|
|
</para>
|
|
|
|
<para>
|
|
Halt the system.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="head">
|
|
<title>head</title>
|
|
|
|
<para>
|
|
Usage: head [OPTION] FILE...
|
|
</para>
|
|
|
|
<para>
|
|
Print first 10 lines of each FILE to standard output.
|
|
With more than one FILE, precede each with a header
|
|
giving the file name. With no FILE, or when FILE is -,
|
|
read standard input.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-n NUM Print first NUM lines instead of first 10
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ head -n 2 /etc/passwd
|
|
root:x:0:0:root:/root:/bin/bash
|
|
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="hostid">
|
|
<title>hostid</title>
|
|
|
|
<para>
|
|
Usage: hostid
|
|
</para>
|
|
|
|
<para>
|
|
Prints out a unique 32-bit identifier for the current
|
|
machine. The 32-bit identifier is intended to be unique
|
|
among all UNIX systems in existence.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="hostname">
|
|
<title>hostname</title>
|
|
|
|
<para>
|
|
Usage: hostname [OPTION]... [HOSTNAME|-F FILE]
|
|
</para>
|
|
|
|
<para>
|
|
Get or set the hostname or DNS domain name. If a
|
|
hostname is given (or a file with the -F parameter), the
|
|
host name will be set.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s Short
|
|
-i Addresses for the hostname
|
|
-d DNS domain name
|
|
-F FILE Use the contents of FILE to specify the hostname
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ hostname
|
|
slag
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="id">
|
|
<title>id</title>
|
|
|
|
<para>
|
|
Usage: id [OPTION]... [USERNAME]
|
|
</para>
|
|
|
|
<para>
|
|
Print information for USERNAME or the current user.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-g Print only the group ID
|
|
-u Print only the user ID
|
|
-r Print the real user ID instead of the effective ID (with -ug)
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ id
|
|
uid=1000(andersen) gid=1000(andersen)
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="init">
|
|
<title>init</title>
|
|
|
|
<para>
|
|
Usage: init
|
|
</para>
|
|
|
|
<para>
|
|
Init is the parent of all processes.
|
|
</para>
|
|
|
|
<para>
|
|
This version of init is designed to be run only by the
|
|
kernel.
|
|
</para>
|
|
|
|
<para>
|
|
BusyBox init doesn't support multiple runlevels. The
|
|
runlevels field of the /etc/inittab file is completely
|
|
ignored by BusyBox init. If you want runlevels, use
|
|
sysvinit.
|
|
</para>
|
|
|
|
<para>
|
|
BusyBox init works just fine without an inittab. If no
|
|
inittab is found, it has the following default behavior:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
::sysinit:/etc/init.d/rcS
|
|
::askfirst:/bin/sh
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
If it detects that /dev/console is _not_ a serial
|
|
console, it will also run:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
tty2::askfirst:/bin/sh
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
If you choose to use an /etc/inittab file, the inittab
|
|
entry format is as follows:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
<id>:<runlevels>:<action>:<process>
|
|
</screen>
|
|
<para>
|
|
|
|
<sect2>
|
|
<title>id</title>
|
|
<para>
|
|
WARNING: This field has a non-traditional
|
|
meaning for BusyBox init! The id field is used
|
|
by BusyBox init to specify the controlling tty
|
|
for the specified process to run on. The
|
|
contents of this field are appended to "/dev/"
|
|
and used as-is. There is no need for this field
|
|
to be unique, although if it isn't you may have
|
|
strange results. If this field is left blank,
|
|
it is completely ignored. Also note that if
|
|
BusyBox detects that a serial console is in use,
|
|
then all entries containing non-empty id fields
|
|
will _not_ be run. BusyBox init does nothing
|
|
with utmp. We don't need no stinkin' utmp.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>runlevels</title>
|
|
|
|
<para>
|
|
The runlevels field is completely ignored.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>action</title>
|
|
|
|
<para>
|
|
Valid actions include: sysinit, respawn,
|
|
askfirst, wait, once, and ctrlaltdel.
|
|
</para>
|
|
|
|
<para>
|
|
askfirst acts just like respawn, but before
|
|
running the specified process it displays the
|
|
line "Please press Enter to activate this
|
|
console." and then waits for the user to press
|
|
enter before starting the specified process.
|
|
</para>
|
|
|
|
<para>
|
|
Unrecognized actions (like initdefault) will
|
|
cause init to emit an error message, and then go
|
|
along with its business.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>process</title>
|
|
|
|
<para>
|
|
Specifies the process to be executed and its
|
|
command line.
|
|
</para>
|
|
</sect2>
|
|
|
|
<para>
|
|
Example /etc/inittab file:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
# This is run first except when booting in single-user mode.
|
|
#
|
|
::sysinit:/etc/init.d/rcS
|
|
|
|
# /bin/sh invocations on selected ttys
|
|
#
|
|
# Start an "askfirst" shell on the console (whatever that may be)
|
|
::askfirst:/bin/sh
|
|
# Start an "askfirst" shell on /dev/tty2
|
|
tty2::askfirst:/bin/sh
|
|
|
|
# /sbin/getty invocations for selected ttys
|
|
#
|
|
tty4::respawn:/sbin/getty 38400 tty4
|
|
tty5::respawn:/sbin/getty 38400 tty5
|
|
|
|
# Example of how to put a getty on a serial line (for a terminal)
|
|
#
|
|
#ttyS0::respawn:/sbin/getty -L ttyS0 9600 vt100
|
|
#ttyS1::respawn:/sbin/getty -L ttyS1 9600 vt100
|
|
#
|
|
# Example how to put a getty on a modem line.
|
|
#ttyS2::respawn:/sbin/getty -x0 -s 57600 ttyS2
|
|
|
|
# Stuff to do before rebooting
|
|
::ctrlaltdel:/bin/umount -a -r > /dev/null 2>&1
|
|
::ctrlaltdel:/sbin/swapoff -a > /dev/null 2>&1
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="insmod">
|
|
<title>insmod</title>
|
|
|
|
<para>
|
|
Usage: insmod [OPTION]... MODULE [symbol=value]...
|
|
</para>
|
|
|
|
<para>
|
|
Loads MODULE into the kernel.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-f Force module to load into the wrong kernel version.
|
|
-k Make module autoclean-able.
|
|
-v Verbose output
|
|
-x Do not export externs
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="kill">
|
|
<title>kill</title>
|
|
|
|
<para>
|
|
Usage: kill [OPTION] PID...
|
|
</para>
|
|
|
|
<para>
|
|
Send a signal (default is SIGTERM) to the specified
|
|
PID(s).
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-l List all signal names and numbers
|
|
-SIG Send signal SIG
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ps | grep apache
|
|
252 root root S [apache]
|
|
263 www-data www-data S [apache]
|
|
264 www-data www-data S [apache]
|
|
265 www-data www-data S [apache]
|
|
266 www-data www-data S [apache]
|
|
267 www-data www-data S [apache]
|
|
$ kill 252
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="killall">
|
|
<title>killall</title>
|
|
|
|
<para>
|
|
Usage: killall [OPTION] NAME...
|
|
</para>
|
|
|
|
<para>
|
|
Send a signal (default is SIGTERM) to the specified
|
|
NAME(s).
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-l List all signal names and numbers
|
|
-SIG Send signal SIG
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ killall apache
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="length">
|
|
<title>length</title>
|
|
|
|
<para>
|
|
Usage: length STRING
|
|
</para>
|
|
|
|
<para>
|
|
Print the length of STRING.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ length "Hello"
|
|
5
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="ln">
|
|
<title>ln</title>
|
|
|
|
<para>
|
|
Usage: ln [OPTION]... TARGET FILE|DIRECTORY
|
|
</para>
|
|
|
|
<para>
|
|
Create a link named FILE or DIRECTORY to the specified
|
|
TARGET. You may use '--' to indicate that all following
|
|
arguments are non-options.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s Make symbolic link instead of hard link
|
|
-f Remove existing destination file
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ln -s BusyBox /tmp/ls
|
|
$ ls -l /tmp/ls
|
|
lrwxrwxrwx 1 root root 7 Apr 12 18:39 ls -> BusyBox*
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="loadacm">
|
|
<title>loadacm</title>
|
|
|
|
<para>
|
|
Usage: loadacm
|
|
</para>
|
|
|
|
<para>
|
|
Load an acm from stdin.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ loadacm < /etc/i18n/acmname
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="loadfont">
|
|
<title>loadfont</title>
|
|
|
|
<para>
|
|
Usage: loadfont
|
|
</para>
|
|
|
|
<para>
|
|
Load a console font from stdin.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ loadfont < /etc/i18n/fontname
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="loadkmap">
|
|
<title>loadkmap</title>
|
|
|
|
<para>
|
|
Usage: loadkmap
|
|
</para>
|
|
|
|
<para>
|
|
Load a binary keyboard translation table from stdin.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ loadkmap < /etc/i18n/lang-keymap
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="logger">
|
|
<title>logger</title>
|
|
|
|
<para>
|
|
Usage: logger [OPTION]... [MESSAGE]
|
|
</para>
|
|
|
|
<para>
|
|
Write MESSAGE to the system log. If MESSAGE is '-', log
|
|
stdin.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s Log to stderr as well as the system log
|
|
-t Log using the specified tag (defaults to user name)
|
|
-p Enter the message with the specified priority
|
|
This may be numerical or a ``facility.level'' pair
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ logger "hello"
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="logname">
|
|
<title>logname</title>
|
|
|
|
<para>
|
|
Usage: logname
|
|
</para>
|
|
|
|
<para>
|
|
Print the name of the current user.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ logname
|
|
root
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="ls">
|
|
<title>ls</title>
|
|
|
|
<para>
|
|
Usage: ls [OPTION]... [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Do not hide entries starting with .
|
|
-c With -l: show ctime (the time of last
|
|
modification of file status information)
|
|
-d List directory entries instead of contents
|
|
-e List both full date and full time
|
|
-l Use a long listing format
|
|
-n List numeric UIDs and GIDs instead of names
|
|
-p Append indicator (one of /=@|) to entries
|
|
-u With -l: show access time (the time of last
|
|
access of the file)
|
|
-x List entries by lines instead of by columns
|
|
-A Do not list implied . and ..
|
|
-C List entries by columns
|
|
-F Append indicator (one of */=@|) to entries
|
|
-R List subdirectories recursively
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="lsmod">
|
|
<title>lsmod</title>
|
|
|
|
<para>
|
|
Usage: lsmod
|
|
</para>
|
|
|
|
<para>
|
|
List currently loaded kernel modules.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="makedevs">
|
|
<title>makedevs</title>
|
|
|
|
<para>
|
|
Usage: makedevsf NAME TYPE MAJOR MINOR FIRST LAST [s]
|
|
</para>
|
|
|
|
<para>
|
|
Create a range of block or character special files.
|
|
</para>
|
|
|
|
<para>
|
|
TYPE may be:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
b Make a block (buffered) device
|
|
c or u Make a character (un-buffered) device
|
|
p Make a named pipe. MAJOR and MINOR are ignored for named pipes
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
FIRST specifies the number appended to NAME to create
|
|
the first device. LAST specifies the number of the last
|
|
item that should be created. If 's' is the last
|
|
argument, the base device is created as well.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ makedevs /dev/ttyS c 4 66 2 63
|
|
[creates ttyS2-ttyS63]
|
|
$ makedevs /dev/hda b 3 0 0 8 s
|
|
[creates hda,hda1-hda8]
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="md5sum">
|
|
<title>md5sum</title>
|
|
|
|
<para>
|
|
Usage: md5sum [OPTION]... FILE...
|
|
</para>
|
|
|
|
<para>
|
|
Print or check MD5 checksums.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-b Read files in binary mode
|
|
-c Check MD5 sums against given list
|
|
-t Read files in text mode (default)
|
|
-g Read a string
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
The following two options are useful only when verifying
|
|
checksums:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s Don't output anything, status code shows success
|
|
-w Warn about improperly formated MD5 checksum lines
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ md5sum busybox
|
|
6fd11e98b98a58f64ff3398d7b324003 busybox
|
|
$ md5sum -c
|
|
6fd11e98b98a58f64ff3398d7b324003 busybox
|
|
6fd11e98b98a58f64ff3398d7b324002 busybox
|
|
md5sum: MD5 check failed for 'busybox'
|
|
^D
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mkdir">
|
|
<title>mkdir</title>
|
|
|
|
<para>
|
|
Usage: mkdir [OPTION]... DIRECTORY...
|
|
</para>
|
|
|
|
<para>
|
|
Create the DIRECTORY(s), if they do not already exist.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-m Set permission mode (as in chmod), not rwxrwxrwx - umask
|
|
-p No error if directory exists, make parent directories as needed
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ mkdir /tmp/foo
|
|
$ mkdir /tmp/foo
|
|
/tmp/foo: File exists
|
|
$ mkdir /tmp/foo/bar/baz
|
|
/tmp/foo/bar/baz: No such file or directory
|
|
$ mkdir -p /tmp/foo/bar/baz
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mkfifo">
|
|
<title>mkfifo</title>
|
|
|
|
<para>
|
|
Usage: mkfifo [OPTION] NAME
|
|
</para>
|
|
|
|
<para>
|
|
Create a named pipe (identical to 'mknod NAME p').
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-m MODE Create the pipe using the specified mode (default a=rw)
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mkfs.minix">
|
|
<title>mkfs.minix</title>
|
|
|
|
<para>
|
|
Usage: mkfs.minix [OPTION]... NAME [BLOCKS]
|
|
</para>
|
|
|
|
<para>
|
|
Make a MINIX filesystem.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c Check the device for bad blocks
|
|
-n [14|30] Specify the maximum length of filenames
|
|
-i Specify the number of inodes for the filesystem
|
|
-l FILENAME Read the bad blocks list from FILENAME
|
|
-v Make a Minix version 2 filesystem
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mknod">
|
|
<title>mknod</title>
|
|
|
|
<para>
|
|
Usage: mknod [OPTION]... NAME TYPE MAJOR MINOR
|
|
</para>
|
|
|
|
<para>
|
|
Create a special file (block, character, or pipe).
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-m Create the special file using the specified mode (default a=rw)
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
TYPE may be:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
b Make a block (buffered) device
|
|
c or u Make a character (un-buffered) device
|
|
p Make a named pipe. MAJOR and MINOR are ignored for named pipes
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ mknod /dev/fd0 b 2 0
|
|
$ mknod -m 644 /tmp/pipe p
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mkswap">
|
|
<title>mkswap</title>
|
|
|
|
<para>
|
|
Usage: mkswap [OPTION]... DEVICE [BLOCKS]
|
|
</para>
|
|
|
|
<para>
|
|
Prepare a disk partition to be used as a swap partition.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c Check for read-ability.
|
|
-v0 Make version 0 swap [max 128 Megs].
|
|
-v1 Make version 1 swap [big!] (default for kernels > 2.1.117).
|
|
BLOCKS Number of block to use (default is entire partition).
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mktemp">
|
|
<title>mktemp</title>
|
|
|
|
<para>
|
|
Usage: mktemp TEMPLATE
|
|
</para>
|
|
|
|
<para>
|
|
Creates a temporary file with its name based on
|
|
TEMPLATE. TEMPLATE is any name with six `Xs' (i.e.
|
|
/tmp/temp.XXXXXX).
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ mktemp /tmp/temp.XXXXXX
|
|
/tmp/temp.mWiLjM
|
|
$ ls -la /tmp/temp.mWiLjM
|
|
-rw------- 1 andersen andersen 0 Apr 25 17:10 /tmp/temp.mWiLjM
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="more">
|
|
<title>more</title>
|
|
|
|
<para>
|
|
Usage: more [FILE]...
|
|
</para>
|
|
|
|
<para>
|
|
Page through text one screenful at a time.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ dmesg | more
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mount">
|
|
<title>mount</title>
|
|
|
|
<para>
|
|
Usage: mount [OPTION]...
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
or: mount [OPTION]... DEVICE DIRECTORY
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Mount filesystems.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Mount all filesystems in /etc/fstab
|
|
-o One of the many filesystem options listed below
|
|
-r Mount the filesystem read-only
|
|
-t TYPE Specify the filesystem type
|
|
-w Mount the filesystem read-write
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Options for use with the -o flag:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
async/sync Writes are asynchronous / synchronous
|
|
atime/noatime Enable / disable updates to inode access times
|
|
dev/nodev Allow / disallow use of special device files
|
|
exec/noexec Allow / disallow use of executable files
|
|
loop Mount a file via loop device
|
|
suid/nosuid Allow / disallow set-user-id-root programs
|
|
remount Remount a currently mounted filesystem
|
|
ro/rw Mount filesystem read-only / read-write
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
There are even more flags that are filesystem specific.
|
|
You'll have to see the written documentation for those.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ mount
|
|
/dev/hda3 on / type minix (rw)
|
|
proc on /proc type proc (rw)
|
|
devpts on /dev/pts type devpts (rw)
|
|
$ mount /dev/fd0 /mnt -t msdos -o ro
|
|
$ mount /tmp/diskimage /opt -t ext2 -o loop
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mt">
|
|
<title>mt</title>
|
|
|
|
<para>
|
|
Usage: mt [OPTION] OPCODE VALUE
|
|
</para>
|
|
|
|
<para>
|
|
Control magnetic tape drive operation.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-f DEVICE Control DEVICE
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mv">
|
|
<title>mv</title>
|
|
|
|
<para>
|
|
Usage: mv SOURCE DEST
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
or: mv SOURCE... DIRECTORY
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ mv /tmp/foo /bin/bar
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="nc">
|
|
<title>nc</title>
|
|
|
|
<para>
|
|
Usage: nc HOST PORT
|
|
</para>
|
|
|
|
<para>
|
|
Open a pipe to HOST:PORT.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ nc foobar.somedomain.com 25
|
|
220 foobar ESMTP Exim 3.12 #1 Sat, 15 Apr 2000 00:03:02 -0600
|
|
help
|
|
214-Commands supported:
|
|
214- HELO EHLO MAIL RCPT DATA AUTH
|
|
214 NOOP QUIT RSET HELP
|
|
quit
|
|
221 foobar closing connection
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="nslookup">
|
|
<title>nslookup</title>
|
|
|
|
<para>
|
|
Usage: nslookup [HOST]
|
|
</para>
|
|
|
|
<para>
|
|
Query the nameserver for the IP address of the given
|
|
HOST.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ nslookup localhost
|
|
Server: default
|
|
Address: default
|
|
|
|
Name: debian
|
|
Address: 127.0.0.1
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="ping">
|
|
<title>ping</title>
|
|
|
|
<para>
|
|
Usage: ping [OPTION]... HOST
|
|
</para>
|
|
|
|
<para>
|
|
Send ICMP ECHO_REQUEST packets to HOST.
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c COUNT Send only COUNT pings
|
|
-s SIZE Send SIZE data bytes in packets (default=56)
|
|
-q Quiet mode, only displays output at start and when finished
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ping localhost
|
|
PING slag (127.0.0.1): 56 data bytes
|
|
64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=20.1 ms
|
|
|
|
--- debian ping statistics ---
|
|
1 packets transmitted, 1 packets received, 0% packet loss
|
|
round-trip min/avg/max = 20.1/20.1/20.1 ms
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="poweroff">
|
|
<title>poweroff</title>
|
|
|
|
<para>
|
|
Usage: poweroff
|
|
</para>
|
|
|
|
<para>
|
|
Shut down the system, and request that the kernel turn
|
|
off power upon halting.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="printf">
|
|
<title>printf</title>
|
|
|
|
<para>
|
|
Usage: printf FORMAT [ARGUMENT]...
|
|
</para>
|
|
|
|
<para>
|
|
Format and print the given data in a manner similar to
|
|
the C printf command.
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ printf "Val=%d\n" 5
|
|
Val=5
|
|
</screen>
|
|
</para>
|
|
</sect1>
|
|
|
|
<!-- This is where I have stopped formatting stuff -->
|
|
<varlistentry><term><emphasis>ps
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: ps
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Report process status
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
This version of ps accepts no options.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ps
|
|
PID Uid Gid State Command
|
|
1 root root S init
|
|
2 root root S [kflushd]
|
|
3 root root S [kupdate]
|
|
4 root root S [kpiod]
|
|
5 root root S [kswapd]
|
|
742 andersen andersen S [bash]
|
|
743 andersen andersen S -bash
|
|
745 root root S [getty]
|
|
2990 andersen andersen R ps
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>pwd
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Prints the full filename of the current working directory.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ pwd
|
|
/root
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>reboot
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Instructs the kernel to reboot the system.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>rm
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: rm [OPTION]... FILE...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Remove (unlink) the <literal>FILE(s).</literal> You may use '--' to
|
|
indicate that all following arguments are non-options.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-f remove existing destinations, never prompt
|
|
-r or -R remove the contents of directories recursively
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ rm -rf /tmp/foo
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>rmdir
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: rmdir [OPTION]... DIRECTORY...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Remove the <literal>DIRECTORY(ies),</literal> if they are empty.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
# rmdir /tmp/foo
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>rmmod
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: rmmod [OPTION]... [MODULE]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Unloads the specified kernel modules from the kernel.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Try to remove all unused kernel modules.
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ rmmod tulip
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sed
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sed [<emphasis>-n</emphasis>] <emphasis>-e</emphasis> script [file...]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Allowed sed scripts come in the following form:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
'ADDR [!] COMMAND'
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
where address ADDR can be:
|
|
NUMBER Match specified line number
|
|
$ Match last line
|
|
/REGEXP/ Match specified regexp
|
|
(! inverts the meaning of the match)
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
and COMMAND can be:
|
|
s/regexp/replacement/[igp]
|
|
which attempt to match regexp against the pattern space
|
|
and if successful replaces the matched portion with replacement.
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
aTEXT
|
|
which appends TEXT after the pattern space
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-e add the script to the commands to be executed
|
|
-n suppress automatic printing of pattern space
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
This version of sed matches full regular expressions.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo "foo" | sed -e 's/f[a-zA-Z]o/bar/g'
|
|
bar
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>setkeycodes
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: setkeycodes SCANCODE KEYCODE ...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Set entries into the kernel's scancode-to-keycode map, allowing unusual
|
|
keyboards to generate usable keycodes.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
SCANCODE may be either xx or e0xx (hexadecimal), and KEYCODE is given in
|
|
decimal
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
# setkeycodes e030 127
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sfdisk
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sfdisk [options] device ...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
device: something like /dev/hda or /dev/sda
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
useful options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s [or --show-size]: list size of a partition
|
|
-c [or --id]: print or change partition Id
|
|
-l [or --list]: list partitions of each device
|
|
-d [or --dump]: idem, but in a format suitable for later input
|
|
-i [or --increment]: number cylinders etc. from 1 instead of from 0
|
|
-uS, -uB, -uC, -uM: accept/report in units of sectors/blocks/cylinders/MB
|
|
-T [or --list-types]:list the known partition types
|
|
-D [or --DOS]: for DOS-compatibility: waste a little space
|
|
-R [or --re-read]: make kernel reread partition table
|
|
-N# : change only the partition with number #
|
|
-n : do not actually write to disk
|
|
-O file : save the sectors that will be overwritten to file
|
|
-I file : restore these sectors again
|
|
-v [or --version]: print version
|
|
-? [or --help]: print this message
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
dangerous options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-g [or --show-geometry]: print the kernel's idea of the geometry
|
|
-x [or --show-extended]: also list extended partitions on output
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
or expect descriptors for them on input
|
|
-L [or --Linux]: do not complain about things irrelevant for Linux
|
|
-q [or --quiet]: suppress warning messages
|
|
You can override the detected geometry using:
|
|
-C# [or --cylinders #]:set the number of cylinders to use
|
|
-H# [or --heads #]: set the number of heads to use
|
|
-S# [or --sectors #]: set the number of sectors to use
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
You can disable all consistency checking with:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-f [or --force]: do what I say, even if it is stupid
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sh
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sh
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
lash -- the BusyBox LAme SHell (command interpreter)
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
This command does not yet have proper documentation.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Use lash just as you would use any other shell. It properly handles pipes,
|
|
redirects, job control, can be used as the shell for scripts (#!/bin/sh),
|
|
and has a sufficient set of builtins to do what is needed. It does not
|
|
(yet) support Bourne Shell syntax. If you need things like
|
|
``if-then-else'', ``while'', and such, use ash or bash. If you just need a
|
|
very simple and extremely small shell, this will do the job.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sleep
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sleep N
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Pause for N seconds.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ sleep 2
|
|
[2 second delay results]
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sort
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sort [<emphasis>-n</emphasis>] [<emphasis>-r</emphasis>] [FILE]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Sorts lines of text in the specified files
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo -e "e\nf\nb\nd\nc\na" | sort
|
|
a
|
|
b
|
|
c
|
|
d
|
|
e
|
|
f
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>swapoff
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: swapoff [OPTION] [device]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Stop swapping virtual memory pages on the given device.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Stop swapping on all swap devices
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>swapon
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: swapon [OPTION] [device]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Start swapping virtual memory pages on the given device.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a Start swapping on all swap devices
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>sync
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: sync
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Write all buffered filesystem blocks to disk.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>syslogd
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: syslogd [OPTION]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Linux system and kernel (provides klogd) logging utility. Note that this
|
|
version of syslogd/klogd ignores /etc/syslog.conf.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-m NUM Interval between MARK lines (default=20min, 0=off)
|
|
-n Run as a foreground process
|
|
-K Do not start up the klogd process
|
|
-O FILE Use an alternate log file (default=/var/log/messages)
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>tail
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: tail [OPTION] [FILE]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Print last 10 lines of each FILE to standard output. With more than one
|
|
FILE, precede each with a header giving the file name. With no FILE, or
|
|
when FILE is -, read standard input.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-n NUM Print last NUM lines instead of first 10
|
|
-f Output data as the file grows. This version
|
|
of 'tail -f' supports only one file at a time.
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ tail -n 1 /etc/resolv.conf
|
|
nameserver 10.0.0.1
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>tar
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: tar -[cxtvO] [<emphasis>--exclude</emphasis> File] [<emphasis>-f</emphasis> tarFile] [FILE] ...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Create, extract, or list files from a tar file. Note that this version of
|
|
tar treats hard links as separate files.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Main operation mode:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
c create
|
|
x extract
|
|
t list
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
File selection:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
f name of tarfile or "-" for stdin
|
|
O extract to stdout
|
|
--exclude file to exclude
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Informative output:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
v verbosely list files processed
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ zcat /tmp/tarball.tar.gz | tar -xf -
|
|
$ tar -cf /tmp/tarball.tar /usr/local
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>tee
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: tee [OPTION]... [FILE]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Copy standard input to each FILE, and also to standard output.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a append to the given FILEs, do not overwrite
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo "Hello" | tee /tmp/foo
|
|
$ cat /tmp/foo
|
|
Hello
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>telnet
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: telnet host [port]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Telnet is used to establish interactive communication with another computer
|
|
over a network using the TELNET protocol.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>test, [
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: test EXPRESSION or [ EXPRESSION ]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Checks file types and compares values returning an exit code determined by
|
|
the value of EXPRESSION.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ test 1 -eq 2
|
|
$ echo $?
|
|
1
|
|
$ test 1 -eq 1
|
|
$ echo $?
|
|
0
|
|
$ [ -d /etc ]
|
|
$ echo $?
|
|
0
|
|
$ [ -d /junk ]
|
|
$ echo $?
|
|
1
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>touch
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: touch [<emphasis>-c</emphasis>] file [file ...]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Update the last-modified date on (or create) the selected file[s].
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ ls -l /tmp/foo
|
|
/bin/ls: /tmp/foo: No such file or directory
|
|
$ touch /tmp/foo
|
|
$ ls -l /tmp/foo
|
|
-rw-rw-r-- 1 andersen andersen 0 Apr 15 01:11 /tmp/foo
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>tr
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: tr [-cds] STRING1 [STRING2]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Translate, squeeze, and/or delete characters from standard input, writing
|
|
to standard output.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c take complement of STRING1
|
|
-d delete input characters coded STRING1
|
|
-s squeeze multiple output characters of STRING2 into one character
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo "gdkkn vnqkc" | tr [a-y] [b-z]
|
|
hello world
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>true
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Returns an exit code of TRUE (0)
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ true
|
|
$ echo $?
|
|
0
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>tty
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: tty
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Print the file name of the terminal connected to standard input.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-s print nothing, only return an exit status
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ tty
|
|
/dev/tty2
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>umount
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: umount [flags] filesystem|directory
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Flags:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a: Unmount all file systems
|
|
-r: Try to remount devices as read-only if mount is busy
|
|
-f: Force filesystem umount (i.e. unreachable NFS server)
|
|
-l: Do not free loop device (if a loop device has been used)
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ umount /dev/hdc1
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>uname
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: uname [OPTION]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Print certain system information. With no OPTION, same as <emphasis>-s</emphasis>.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-a print all information
|
|
-m the machine (hardware) type
|
|
-n print the machine's network node hostname
|
|
-r print the operating system release
|
|
-s print the operating system name
|
|
-p print the host processor type
|
|
-v print the operating system version
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ uname -a
|
|
Linux debian 2.2.15pre13 #5 Tue Mar 14 16:03:50 MST 2000 i686 unknown
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>uniq
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: uniq [OPTION]... [INPUT [OUTPUT]]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Discard all but one of successive identical lines from INPUT (or standard
|
|
input), writing to OUTPUT (or standard output).
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ echo -e "a\na\nb\nc\nc\na" | sort | uniq
|
|
a
|
|
b
|
|
c
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>update
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: update [options]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Periodically flushes filesystem buffers.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-S force use of sync(2) instead of flushing
|
|
-s SECS call sync this often (default 30)
|
|
-f SECS flush some buffers this often (default 5)
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>uptime
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: uptime
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Tells how long the system has been running since boot.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ uptime
|
|
1:55pm up 2:30, load average: 0.09, 0.04, 0.00
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>usleep
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: usleep N
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Pauses for N microseconds.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ usleep 1000000
|
|
[pauses for 1 second]
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>uudecode
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: uudecode [OPTION] [FILE]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Uudecode a uuencoded file
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-o FILE direct output to FILE
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ uudecode -o busybox busybox.uu
|
|
$ ls -l busybox
|
|
-rwxr-xr-x 1 ams ams 245264 Jun 7 21:35 busybox
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>uuencode
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: uuencode [OPTION] [INFILE] REMOTEFILE
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Uuencode a file.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-m use base64 encoding as of RFC1521
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ uuencode busybox busybox
|
|
begin 755 busybox
|
|
M?T5,1@$!`0````````````(``P`!````L+@$"#0```!0N@,``````#0`(``&
|
|
.....
|
|
$ uudecode busybox busybox > busybox.uu
|
|
$
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>wc
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: wc [OPTION]... [FILE]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Print line, word, and byte counts for each FILE, and a total line if more
|
|
than one FILE is specified. With no FILE, read standard input.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Options:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
-c print the byte counts
|
|
-l print the newline counts
|
|
-L print the length of the longest line
|
|
-w print the word counts
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ wc /etc/passwd
|
|
31 46 1365 /etc/passwd
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>which
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: which [COMMAND ...]
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Locates a COMMAND.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ which login
|
|
/bin/login
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>whoami
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: whoami
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Prints the user name associated with the current effective user id.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Example:
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
$ whoami
|
|
andersen
|
|
</screen>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>yes
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
Usage: yes [OPTION]... [STRING]...
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Repeatedly outputs a line with all specified <literal>STRING(s),</literal>
|
|
or `y'.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry>
|
|
<varlistentry><term><emphasis>zcat
|
|
|
|
</emphasis></term>
|
|
<listitem><para></para>
|
|
|
|
<para>
|
|
This is essentially an alias for invoking ``gunzip <emphasis>-c</emphasis>'', where it decompresses the file in question and send the output to
|
|
stdout.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
-------------------------------
|
|
|
|
|
|
</para>
|
|
|
|
</listitem></varlistentry></variablelist>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="pod2docbook-ch-1-sect-6"><title>LIBC NSS
|
|
|
|
</title>
|
|
<!-- Bogus hack to ensure that each sect has a paragraph in it -->
|
|
<para>
|
|
</para>
|
|
|
|
|
|
<para>
|
|
GNU Libc uses the Name Service Switch (NSS) to configure the behavior of
|
|
the C library for the local environment, and to configure how it reads
|
|
system data, such as passwords and group information. BusyBox has made it
|
|
Policy that it will never use NSS, and will never use libc calls that
|
|
make use of NSS. This allows you to run an embedded system without the need
|
|
for installing an /etc/nsswitch.conf file and without /lib/libnss_*
|
|
libraries installed.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
If you are using a system that is using a remote LDAP server for
|
|
authentication via GNU libc NSS, and you want to use BusyBox, then you will
|
|
need to adjust the BusyBox source. Chances are though, that if you have
|
|
enough space to install of that stuff on your system, then you probably
|
|
want the full GNU utilities.
|
|
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="pod2docbook-ch-1-sect-7"><title>SEE ALSO
|
|
|
|
</title>
|
|
<!-- Bogus hack to ensure that each sect has a paragraph in it -->
|
|
<para>
|
|
</para>
|
|
|
|
|
|
<para>
|
|
<literal>textutils(1),</literal> <literal>shellutils(1),</literal> etc...
|
|
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="pod2docbook-ch-1-sect-8"><title>MAINTAINER
|
|
|
|
</title>
|
|
<!-- Bogus hack to ensure that each sect has a paragraph in it -->
|
|
<para>
|
|
</para>
|
|
|
|
|
|
<para>
|
|
Erik Andersen <andersee@debian.org> <andersen@lineo.com>
|
|
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="pod2docbook-ch-1-sect-9"><title>AUTHORS
|
|
|
|
</title>
|
|
<!-- Bogus hack to ensure that each sect has a paragraph in it -->
|
|
<para>
|
|
</para>
|
|
|
|
|
|
<para>
|
|
The following people have contributed code to BusyBox whether they know it
|
|
or not.
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Erik Andersen <andersee@debian.org>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
John Beppu <beppu@lineo.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Brian Candler <B.Candler@pobox.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Randolph Chung <tausq@debian.org>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Dave Cinege <dcinege@psychosis.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Karl M. Hegbloom <karlheg@debian.org>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
John Lombardo <john@deltanet.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Glenn McGrath <bug1@netconnect.com.au>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Bruce Perens <bruce@perens.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Pavel Roskin <proski@gnu.org>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Linus Torvalds <torvalds@transmeta.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Charles P. Wright <cpwright@villagenet.com>
|
|
|
|
|
|
</para>
|
|
|
|
<para>
|
|
Enrique Zanardi <ezanardi@ull.es>
|
|
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
</book> <!-- End of the book -->
|