The Psychotic Internet Services’ Unix Bible- A reference for all of us…….

 

 

A list of commands and a quick description

alias  ........  this allows the user view the current aliases

awk ........  this allows the user to search for a pattern within a file

bdiff ......... compares two large files

bfs .......... scans a large file

cal ......... shows a calendar

cat ......... concatenates and  prints a file

cc ......... c compiler

cd ........ changes directories

chgrb ......... changes a file groups ownership

chmod ....... changes the permission on a file

chown .......... changes the individual ownership of a file

cmp ......... compairs two files

comm .......... compares two files so as to determine which lines are common to both

cp .......... copies file to another location

cu ......... calls another unix sysytem

date .......... returns the date and time

df ......... shows all mounted drives on your machine

diff ......... displays the diference between two files

du ......... shows the disk usage in blocks for a directory

echo ........ echoes the data to the screen or file

ed ........ text editor

env ......... lists the current environment variables

ex ........ another text editor

expr ........ evaluates a mathmatical formula

find ........ finds a file

f77 .......... fortran complier

format ........ initializes a floppy disk

grep ......... searches for a pattern within a file

help ......... gives help

kill ........ stops a running process

ln ........ creates a link between two files

lpr ......... copies the file to the line printer

ls ......... lists the files in a directory

mail ........ allows the user to send/receive mail

mkdir .......... makes directory

more ......... displays a data file to the screen

mv ........... used to move or rename files

nohup ........ allows a command to continue running even when you log out

nroff ......... used to format text

passwd ........ changes your password

pkgadd ......... installs a new program onto your machine

ps ........... Lists the current processes running

pwd ........ displays the name of the working directory

rm ........ removes files

rmdir ........ removes directories

set ......... lists all the variables in the current shell

setenv ......... sets the environment variables

sleep ......... causes a process to become inactive

source ......... allows the user to execute a file and update any changed values in that file

sort .......... sorts files

spell ......... checks for spelling errors in a file

split ........ divides a file

stty ......... sets the terminal options

tail ......... displays the end of a file

tar ......... copies all specified files into one

touch ........ creates an empty file or updates the time/date stamp on a file

troff ......... outputs formatted output

tset ........ sets the terminal type

umask ......... specify a new creation mask

uniq ......... compairs two files

uucp ........ unix to unix execute

vi ........ full screen editor

vipw ......... opens the vi editor as well as password file for editing

volcheck ......... checks to see if there is a floppy disk mounted to your machine

wc ......... displays detail in the full size

who ........ inf. on other people online

write ......... send a message to another user

! ....... repeats commands

 

 

More commands with a better description (Not all commands are listed).

cat: -b, --number-nonblank

Number all nonblank output lines, starting with 1.

 

-e

     Equivalent to -vE.

 

-n, --number

     Number all output lines, starting with 1.

 

-s, --squeeze-blank

     Replace multiple adjacent blank lines with a single blank line.

 

-t

     Equivalent to -vT.

 

-u

     Ignored; for Unix compatibility.

 

-v, --show-nonprinting

     Display control characters except for LFD and TAB using `^' notation and precede

     characters that have the high bit set with `M-'.

 

-A, --show-all

     Equivalent to -vET.

 

-E, --show-ends

     Display a `$' after the end of each line.

 

-T, --show-tabs

     Display TAB characters as `^I'.

 

--help

     Print a usage message and exit with a status code indicating success.

 

--version

     Print version information on standard output then exit.

_____________________________________________________________________________________

cd: directory becomes the new working directory. The process must have execute (search) permission

in directory. If cd is used without arguments, it returns you to your login directory. In csh you

may specify a list of directories in which directory is to be sought as a subdirectory if it is not a

subdirectory of the current directory; see the description of the cdpath variable in csh.

chmod: The format of a symbolic mode is `[ugoa...][[+=][rwxXstugo...]...][,...]'. Multiple symbolic

operations

can be given, separated by commas.

 

A combination of the letters `ugoa' controls which users' access to the file will be changed: the user

who owns it (u), other users in the file's group (g), other users not in the file's group (o), or all users

(a). If none of these are given, the effect is as if `a' were given, but bits that are set in the umask are

not affected.

 

The operator `+' causes the permissions selected to be added to the existing permissions of each

file; `-' causes them to be removed; and `=' causes them to be the only permissions that the file has.

 

The letters `rwxXstugo' select the new permissions for the affected users: read (r), write (w),

execute (or access for directories) (x), execute only if the file is a directory or already has execute

permission for some user (X), set user or group ID on execution (s), save program text on swap

device (t), the permissions that the user who owns the file currently has for it (u), the permissions

that other users in the file's group have for it (g), and the permissions that other users not in the file's

group have for it (o).

 

A numeric mode is from one to four octal digits (0-7), derived by adding up the bits with values 4,

2, and 1. Any omitted digits are assumed to be leading zeros. The first digit selects the set user ID

(4) and set group ID (2) and save text image (1) attributes. The second digit selects permissions for

the user who owns the file: read (4), write (2), and execute (1); the third selects permissions for

other users in the file's group, with the same values; and the fourth for other users not in the file's

group, with the same values.

 

chmod never changes the permissions of symbolic links; the chmod system call cannot change their

permissions. This is not a problem since the permissions of symbolic links are never used. However,

for each symbolic link listed on the command line, chmod changes the permissions of the pointedto

file. In contrast, chmod ignores symbolic links encountered during recursive directory traversals.

 

OPTIONS

-c, --changes

Verbosely describe only files whose permissions actually change.

 

-f, --silent, --quiet

     Do not print error messages about files whose permissions cannot be changed.

 

-v, --verbose

     Verbosely describe changed permissions.

 

-R, --recursive

     Recursively change permissions of directories and their contents.

 

--help

     Print a usage message on standard output and exit successfully.

 

--version

     Print version information on standard output then exit successfully.

clear: clear clears your screen if this is possible. It looks in the environment for the terminal type and then

in /etc/termcap to figure out how to clear the screen.

date: This manual page documents the GNU version of date. date with no arguments prints the current

time and date (in the format of the `%c' directive described below). If given an argument that starts

with a `+', it prints the current time and date in a format controlled by that argument, which has the

same format as the format string passed to the `strftime' function. Except for directives that start with

`%', characters in that string are printed unchanged.

 

The directives are:

 

%

     a literal %

 

n

     a newline

 

t

     a horizontal tab

 

Time fields:

 

%H

     hour (00..23)

 

%I

     hour (01..12)

 

%k

     hour ( 0..23)

 

%l

     hour ( 1..12)

 

%M

     minute (00..59)

 

%p

     locale's AM or PM

 

%r

     time, 12-hour (hh:mm:ss [AP]M)

 

%s seconds since 1970-01-01 00:00:00 UTC (a nonstandard extension)

 

%S

     second (00..61)

 

%T

     time, 24-hour (hh:mm:ss)

 

%X

     locale's time representation (%H:%M:%S)

 

%Z time zone (e.g., EDT), or nothing if no time zone is determinable

 

Date fields:

 

%a

     locale's abbreviated weekday name (Sun..Sat)

 

%A locale's full weekday name, variable length (Sunday..Saturday)

 

%b

     locale's abbreviated month name (Jan..Dec)

 

%B locale's full month name, variable length (January..December)

 

%c

     locale's date and time (Sat Nov 04 12:02:33 EST 1989)

 

%d

     day of month (01..31)

 

%D

     date (mm/dd/yy)

 

%h

     same as %b

 

%j

     day of year (001..366)

 

%m

     month (01..12)

 

%U week number of year with Sunday as first day of week (00..53)

 

%w

     day of week (0..6) with 0 corresponding to Sunday

 

%W week number of year with Monday as first day of week (00..53)

 

%x

     locale's date representation (mm/dd/yy)

 

%y

     last two digits of year (00..99)

 

%Y

     year (1970...)

 

By default, date pads numeric fields with zeroes. GNU date recognizes the following nonstandard

numeric modifiers:

 

-

     (hyphen) do not pad the field

 

_

     (underscore) pad the field with spaces

 

If given an argument that does not start with `+', date sets the system clock to the time and date

specified by that argument. The argument must consist entirely of digits, which have the following

meaning:

 

MM month

 

DD

     day within month

 

hh hour

 

mm minute

 

CC

     first two digits of year (optional)

 

YY

     last two digits of year (optional)

 

ss

     second (optional)

 

Only the superuser can set the system clock.

 

OPTIONS

-d datestr, --date datestr

Display the time and date specified in datestr, which can be in almost any common format. The

display is in the default output format, or if an argument starting with `+' is given to date, in the

format specified by that argument.

 

--help

     Print a usage message on standard output and exit successfully.

 

-s datestr, --set datestr

     Set the time and date to datestr, which can be in almost any common format. It can contain

     month names, timezones, `am' and `pm', etc.

 

-u, --universal

     Print or set the time and date in Coordinated Universal Time (also known as Greenwich

     Mean Time) instead of in local (wall clock) time.

 

--version

     Print version information on standard output then exit successfully.

find: find recursively descends the directory hierarchy for each pathname in the pathname-list, seeking

files that match a logical expression written using the operators listed below.

 

find does not follow symbolic links to other files or directories; it applies the selection criteria to the

symbolic links themselves, as if they were ordinary files (see ln(1V) for a description of symbolic

links).

 

If the fast-find feature is enabled, find displays pathnames in which a filename component occurs.

 

USAGE

 

Operators

In the descriptions, the argument n is used as a decimal integer where +n means more than n, -n

means less than n, and n means exactly n.

 

-fstype type

     True if the filesystem to which the file belongs is of type type, where type is typically 4.2 or

     nfs.

 

-name filename True if the

     filename argument matches the current file name. Shell argument syntax can be used if

     escaped (watch out for [, ? and *).

 

-perm onum

     True if the file permission flags exactly match the octal number onum (see chmod(1V)). If

     onum is prefixed by a minus sign, more flag bits (017777, see chmod(1V)) become

     significant and the flags are compared: (flags&onum)==onum.

 

-prune

     Always yields true. Has the side effect of pruning the search tree at the file. That is, if the

     current path name is a directory, find will not descend into that directory.

 

-type c

     True if the type of the file is c, where c is one of:

 

b

     for block special file c

 

c

     for character special file

 

d

     for directory

 

f

     for plain file

 

p

     for named pipe (FIFO)

 

l

     for symbolic link

 

s

     for socket

 

-links n

     True if the file has n links.

 

-user uname

     True if the file belongs to the user uname. If uname is numeric and does not appear as a

     login name in the /etc/passwd database, it is taken as a user ID.

 

-nouser

     True if the file belongs to a user not in the /etc/passwd database.

 

-group gname

     True if the file belongs to group gname. If gname is numeric and does not appear as a login

     name in the /etc/group database, it is taken as a group ID.

 

-nogroup

     True if the file belongs to a group not in the /etc/group database.

 

-size n

     True if the file is n blocks long (512 bytes per block). If n is followed by a c, the size is in

     characters.

 

-inum n

     True if the file has inode number n.

 

-atime n

     True if the file has been accessed in n days. Note: the access time of directories in

     path-name-list is changed by find itself.

 

-mtime n

     True if the file has been modified in n days.

 

-ctime n

     True if the file has been changed in n days. "Changed" means either that the file has been

     modified or some attribute of the file (its owner, its group, the number of links to it, etc.) has

     been changed.

 

-exec command

     True if the executed command returns a zero value as exit status. The end of command must

     be punctuated by an escaped semicolon. A command argument {} is replaced by the current

     pathname.

 

-ok command

     Like -exec except that the generated command is written on the standard output, then the

     standard input is read and the command executed only upon response y.

 

-print

     Always true; the current pathname is printed.

 

-ls

     Always true; prints current pathname together with its associated statistics. These include

     (respectively) inode number, size in kilobytes (1024 bytes), protection mode, number of hard

     links, user, group, size in bytes, and modification time. If the file is a special file the size field

     will instead contain the major and minor device numbers. If the file is a symbolic link the

     pathname of the linked-to file is printed preceded by `->'. The format is identical to that of ls

     -gilds (see ls(1V)). Note: formatting is done internally, without executing the ls program.

 

-cpio device

     Always true; write the current file on device in cpio(5) format (5120-byte records).

 

-ncpio device

     Always true; write the current file on device in cpio -c format (5120-byte records).

 

-newer file

     True if the current file has been modified more recently than the argument filename.

 

-xdev

     Always true; find does not traverse down into a file system different from the one on which

     current argument pathname resides.

 

-depth

     Always true; find descends the directory hierarchy, acting on the entries in a directory before

     acting on the directory itself. This can be useful when find is used with cpio to transfer files

     that are contained in directories without write permission.

 

(expression)

     True if the parenthesized expression is true. Note: Parentheses are special to the shell and

     must be escaped.

 

!primary

     True if the primary is false (! is the unary not operator).

 

primary1 [ -a ] primary2

True if both primary1 and primary2 are true. The -a is not required. It is implied by the

juxtaposition of two primaries.

 

primary1 -o primary2

True if either primary1 or primary2 is true (-o is the or operator).

 

Fast-Find

The fast-find feature is enabled by the presence of the find.codes database in /usr/lib/find. You must

be root to build or update this database by running the updatedb script in that same directory. You

may wish to modify the updatedb script to suit your needs.

 

An alternate database can be specified by setting the FCODES environment variable.

­­­­cp: cp copies the contents of filename1 onto filename2. The mode and owner of filename2 are

preserved if it already existed; the mode of the source file is used otherwise. If filename1 is a

symbolic link, or a duplicate hard link, the contents of the file that the link refers to are copied; links

are not preserved.

 

In the second form, cp recursively copies directory1, along with its contents and subdirectories, to

directory2. If directory2 does not exist, cp creates it and duplicates the files and subdirectories of

directory1 within it. If direc_tory2 does exist, cp makes a copy of the directory1 directory within

directory2 (as a subdirectory), along with its files and subdirectories.

 

In the third form, each filename is copied to the indicated directory; the basename of the copy

corresponds to that of the original. The destination directory must already exist for the copy to

succeed.

 

cp refuses to copy a file onto itself.

finger: By default, finger displays information about each logged-in user, including his or her: login name, full

name, terminal name (prepended with a `*' if write-permission is denied), idle time, login time, and

location (comment field in /etc/ttytab for users logged in locally, hostname for users logged in

remotely) if known.

 

Idle time is minutes if it is a single integer, hours and minutes if a `:' is present, or days and hours if a

d is present.

 

When one or more name arguments are given, more detailed information is given for each name

specified, whether they are logged in or not. A name may be a first or last name, or an account

name. Information is presented in a multiline format, and includes, in addition to the information

mentioned above:

the user's home directory and login shell the time they logged in if they are currently logged in, or the

time they last logged in if they are not, as well as the terminal or host from which they logged in and,

if a terminal, the comment field in /etc/ttytab for that terminal

the last time they received mail, and the last time they read their mail

any plan contained in the file .plan in the user's home directory

and any project on which they are working described in the file .project (also in that directory)

 

If a name argument contains an at-sign, `@', then a connection is attempted to the machine named

after the at-sign, and the remote finger daemon is queried. The data returned by that daemon is

printed. If a long format printout is to be produced, finger passes the -l option to the remote finger

daemon over the network using the /W feature of the protocol (see NAME/FINGER Protocol).

grep: Grep searches the named input files (or standard input if no files are named, or the file name - is

given) for lines containing a match to the given pattern. By default, grep prints the matching lines.

 

There are three major variants of grep, controlled by the following options.

-G Interpret pattern as a basic regular expression (see below). This is the default.

-E Interpret pattern as an extended regular expression (see below).

 

-F

     Interpret pattern as a list of fixed strings, separated by newlines, any of which is to be

     matched. In addition, two variant programs egrep and fgrep are available. Egrep is similiar

     (but not identical) to grep -E, and is compatible with the historical Unix egrep. Fgrep is the

     same as grep -F.

 

All variants of grep understand the following options: -num Matches will be printed with num lines

of leading and trailing context. However, grep will never print any given line more than once.

-A num

Print num lines of trailing context after matching lines.

-B num

Print num lines of leading context before matching lines.

 

-C

     Equivalent to -2. -V Print the version number of grep to standard error. This version number

     should be included in all bug reports (see below).

 

-b

     Print the byte offset within the input file before each line of output.

 

-c

     Suppress normal output; instead print a count of matching lines for each input file. With the -v

     option (see below), count non-matching lines. -e pattern Use pattern as the pattern; useful

     to protect patterns beginning with -. -f file Obtain the pattern from file.

 

-h

     Suppress the prefixing of filenames on output when multiple files are searched.

 

-i

     Ignore case distinctions in both the pattern and the input files. -L Suppress normal output;

     instead print the name of each input file from which no output would normally have been

     printed. -l Suppress normal output; instead print the name of each input file from which output

     would normally have been printed. -n Prefix each line of output with the line number within its

     input file.

 

-q

     Quiet; suppress normal output.

 

-s

     Suppress error messages about nonexistent or unreadable files. -v Invert the sense of

     matching, to select non-matching lines. -w Select only those lines containing matches that

     form whole words. The test is that the matching substring must either be at the beginning of

     the line, or preceded by a non-word constituent character. Similarly, it must be either at the

     end of the line or followed by a non-word constituent character. Word-constituent characters

     are letters, digits, and the underscore. -x Select only those matches that exactly match the

     whole line.

kill: kill sends the TERM (terminate, 15) signal to the processes with the specified pids. If a signal name

or number preceded by `-' is given as first argument, that signal is sent instead of terminate. The

signal names are listed by using the -l option, and are as given in <signal.h>, stripped of the common

SIG prefix.

 

The terminate signal will kill processes that do not catch the signal, so `kill -9 ...' is a sure kill, as the

KILL (9) signal cannot be caught. By convention, if process number 0 is specified, all members in

the process group (that is, processes resulting from the current login) are signaled (but beware: this

works only if you use sh(1); not if you use csh(1).) Negative process numbers also have special

meanings; see kill(2V) for details. The killed processes must belong to the current user unless he is

the super-user.

 

To shut the system down and bring it up single user the super-user may send the initialization

process a TERM (terminate) signal by `kill 1'; see init(8). To force init to close and open terminals

according to what is currently in /etc/ttytab use `kill -HUP 1' (sending a hangup signal to process 1).

 

The shell reports the process number of an asynchronous process started with `&' (run in the

background). Process numbers can also be found by using ps(1).

 

kill is built in to csh(1); it allows job specifiers, such as `kill % ...', in place of kill arguments. See

csh(1) for details.

less: Less is a program similar to more (1), but which allows backwards movement in the file as well as

forward movement. Also, less does not have to read the entire input file before starting, so with

large input files it starts up faster than text editors like vi (1). Less uses termcap (or terminfo on

some systems), so it can run on a variety of terminals. There is even limited support for hardcopy

terminals. (On a hardcopy terminal, lines which should be printed at the top of the screen are

prefixed with an uparrow.)

 

Commands are based on both more and vi. Commands may be preceeded by a decimal number,

called N in the descriptions below. The number is used by some commands, as indicated.

In the following descriptions, ^X means control-X. ESC stands for the ESCAPE key; for example

ESC-v means the two character sequence "ESCAPE", then "v".

 

H

     Help: display a summary of these commands. If you forget all the other commands, remember

     this one.

 

SPACE or f or ^F or ^V

Scroll forward N lines, default one window (see option -z below). If N is more than the screen size,

only the final screenful is displayed. Warning: some systems use ^V as a special literalization

character.

 

b or ^B or ESC-v

Scroll backward N lines, default one window (see option -z below). If N is more than the screen

size, only the final screenful is displayed.

 

RETURN or ^N or e or ^E or j or ^J

Scroll forward N lines, default 1. The entire N lines are displayed, even if N is more than the screen

size.

 

y or ^Y or ^P or k or ^K

Scroll backward N lines, default 1. The entire N lines are displayed, even if N is more than the

screen size. Warning: some systems use ^Y as a special job control character.

 

d or ^D

Scroll forward N lines, default one half of the screen size. If N is specified, it becomes the new

default for subsequent d and u commands.

 

u or ^U

Scroll backward N lines, default one half of the screen size. If N is specified, it becomes the new

default for subsequent d and u commands.

 

r or ^R or ^L

Repaint the screen.

 

R

     Repaint the screen, discarding any buffered input. Useful if the file is changing while it is being

     viewed.

 

g or < or ESC-<

Go to line N in the file, default 1 (beginning of file). (Warning: this may be slow if N is large.)

 

G or > or ESC->

Go to line N in the file, default the end of the file. (Warning: this may be slow if N is large, or if N is

not specified and standard input, rather than a file, is being read.)

 

p or %

Go to a position N percent into the file. N should be between 0 and 100. (This works if standard

input is being read, but only if less has already read to the end of the file. It is always fast, but not

always useful.)

 

m

     Followed by any lowercase letter, marks the current position with that letter.

 

`

     (Single quote.) Followed by any lowercase letter, returns to the position which was

     previously marked with that letter. Followed by another single quote, returns to the postion at

     which the last "large" movement command was executed. All marks are lost when a new file

     is examined.

 

^X^X Same as single quote.

 

/pattern

Search forward in the file for the N-th line containing the pattern. N defaults to 1. The pattern is a

regular expression, as recognized by ed. The search starts at the second line displayed (but see the

-a option, which changes this).

 

?pattern

Search backward in the file for the N-th line containing the pattern. The search starts at the line

immediately before the top line displayed.

 

/!pattern

Like /, but the search is for the N-th line which does NOT contain the pattern.

 

?!pattern

Like ?, but the search is for the N-th line which does NOT contain the pattern.

 

n

     Repeat previous search, for N-th line containing the last pattern (or NOT containing the last

     pattern, if the previous search was /! or ?!).

 

E [filename]

Examine a new file. If the filename is missing, the "current" file (see the N and P commands below)

from the list of files in the command line is re-examined. If the filename is a pound sign (#), the

previously examined file is re-examined.

 

^X^V or :e

Same as E. Warning: some systems use ^V as a special literalization character.

 

N or :n

Examine the next file (from the list of files given in the command line). If a number N is specified (not

to be confused with the command N), the N-th next file is examined.

 

P or :p

Examine the previous file. If a number N is specified, the N-th previous file is examined.

 

= or ^G

Prints some information about the file being viewed, including its name and the line number and byte

offset of the bottom line being displayed. If possible, it also prints the length of the file and the

percent of the file above the last displayed line.

 

-

     Followed by one of the command line option letters (see below), this will change the setting

     of that option and print a message describing the new setting. If the option letter has a

     numeric value (such as -b or -h), or a string value (such as -P or -t), a new value may be

     entered after the option letter.

 

_

     (Underscore.) Followed by one of the command line option letters (see below), this will print

     a message describing the current setting of that option. The setting of the option is not

     changed.

 

+cmd Causes the specified cmd to be executed each time a new

     file is examined. For example, +G causes less to initially display each file starting at the end

     rather than the beginning.

 

V

     Prints the version number of less being run.

 

q or :q or ZZ

Exits less.

 

The following two commands may or may not be valid, depending on your particular installation.

 

v

     Invokes an editor to edit the current file being viewed. The editor is taken from the

     environment variable EDITOR, or defaults to "vi".

 

! shell-command

Invokes a shell to run the shell-command given. A percent sign in the command is replaced by the

name of the current file. "!!" repeats the last shell command. "!" with no shell command simply

invokes a shell. In all cases, the shell is taken from the environment variable SHELL, or defaults to

"sh".

logout: Built-in commands are executed within the C shell. If a built-in command occurs as any component

of a pipeline except the last, it is executed in a subshell.

 

:

     Null command. This command is interpreted, but performs no action.

 

alias [ name [ def ] ]

Assign def to the alias name. def is a list of words that may contain escaped historysubstitution

metasyntax. name is not allowed to be alias or unalias. If def is omitted, the alias name is displayed

along with its current definition. If both name and def are omitted, all aliases are displayed.

 

bg [%job] ...

Run the current or specified jobs in the background.

 

break

     Resume execution after the end of the nearest enclosing foreach or while loop. The remaining

     commands on the current line are executed. This allows multilevel breaks to be written as a

     list of break commands, all on one line.

 

breaksw

     Break from a switch, resuming after the endsw.

 

case label:

A label in a switch statement.

 

cd [ dir ]

chdir [ dir ]

Change the shell's working directory to directory dir. If no argument is given, change to the home

directory of the user. If dir is a relative pathname not found in the current directory, check for it in

those directories listed in the cdpath variable. If dir is the name of a shell variable whose value starts

with a /, change to the directory named by that value.

 

continue Continue execution of the nearest enclosing while or foreach.

 

default: Labels the default case in a switch statement. The default should come after all case labels.

Any remaining commands on the command line are first executed.

 

dirs [ -l ]

Print the directory stack, most recent to the left; the first directory shown is the current directory.

With the -l argument, produce an unabbreviated printout; use of the ~ notation is suppressed.

 

echo [ -n ] list

The words in list are written to the shell's standard output, separated by SPACE characters. The

output is terminated with a NEWLINE unless the -n option is used.

 

eval argument ...

Reads the arguments as input to the shell, and executes the resulting command(s). This is usually

used to execute commands generated as the result of command or variable substitution, since

parsing occurs before these substitutions. See tset(1) for an example of how to use eval.

 

exec command

Execute command in place of the current shell, which terminates.

 

exit [ (expr) ]

The shell exits, either with the value of the status variable, or with the value of the specified by the

expression expr.

 

fg % [ job ]

Bring the current or specified job into the foreground.

 

foreach var (wordlist)

...

 

end

     The variable var is successively set to each member of wordlist. The sequence of commands

     between this command and the matching end is executed for each new value of var. (Both

     foreach and end must appear alone on separate lines.)

 

The built-in command continue may be used to continue the loop prematurely and the built-in

command break to terminate it prematurely. When this command is read from the terminal, the loop

is read up once prompting with ? before any statements in the loop are executed.

 

glob wordlist

Perform filename expansion on wordlist. Like echo, but no \ escapes are recognized. Words are

delimited by null characters in the output.

 

goto label

The specified label is filename and command expanded to yield a label. The shell rewinds its input

as much as possible and searches for a line of the form label: possibly preceded by SPACE or

TAB characters. Execution continues after the indicated line. It is an error to jump to a label that

occurs between a while or for built-in, and its corresponding end.

 

hashstat Print a statistics line indicating how effective the internal hash table has been at locating

commands (and avoiding execs). An exec is attempted for each component of the path where the

hash function indicates a possible hit, and in each component that does not begin with a `/'.

 

history [ -hr ] [ n ]

Display the history list; if n is given, display only the n most recent events.

 

-r

     Reverse the order of printout to be most recent first rather than oldest first. -h Display the

     history list without leading numbers. This is used to produce files suitable for sourcing using

     the -h option to source.

 

if (expr) command

If the specified expression evaluates to true, the single command with arguments is executed.

Variable substitution on command happens early, at the same time it does for the rest of the if

command. command must be a simple command, not a pipeline, a command list, or a parenthesized

command list. Note: I/O redirection occurs even if expr is false, when command is not executed

(this is a bug).

 

if (expr) then

...

else if (expr2) then ...

else

...

 

endif

     If expr is true, commands up to the first else are executed. Otherwise, if expr2 is true, the

     commands between the else if and the second else are executed. Otherwise, commands

     between the else and the endif are executed. Any number of else if pairs are allowed, but only

     one else. Only one endif is needed, but it is required. The words else and endif must be the

     first nonwhite characters on a line. The if must appear alone on its input line or after an else.)

 

jobs[ -l ]

List the active jobs under job control.

 

-l

     List process IDs, in addition to the normal information.

 

kill [ -sig ] [ pid ] [ %job ] ...

kill -l Send the TERM (terminate) signal, by default, or the signal specified, to the specified process

ID, the job indicated, or the current job. Signals are either given by number or by name. There is no

default. Typing kill does not send a signal to the current job. If the signal being sent is TERM

(terminate) or HUP (hangup), then the job or process is sent a CONT (continue) signal as well.

 

-l

     List the signal names that can be sent.

 

limit [ -h ] [ resource [ max-use ] ] Limit the consumption by the current process or any process it

spawns, each not to exceed max-use on the specified resource. If max-use is omitted, print the

current limit; if resource is omitted, display all limits.

 

-h

     Use hard limits instead of the current limits. Hard limits impose a ceiling on the values of the

     current limits. Only the super-user may raise the hard limits.

 

resource is one of:

 

cputime

     Maximum CPU seconds per process.

 

filesize

     Largest single file allowed.

 

datasize

     Maximum data size (including stack) for the process.

 

stacksize

     Maximum stack size for the

 

process.

coredumpsize Maximum size of a core dump (file).

descriptors Maximum value for a file descriptor.

 

max-use is a number, with an optional scaling factor, as follows:

 

nh

     Hours (for cputime).

 

nk

     n kilobytes. This is the default for all but cputime.

 

nm

     n megabytes or minutes (for cputime).

 

mm:ss

     Minutes and seconds (for cputime).

 

login [ username|-p ]

Terminate a login shell and invoke login(1). The .logout file is not processed. If username is omitted,

login prompts for the name of a user.

 

-p

     Preserve the current environment (variables).

 

logout

     Terminate a login shell.

 

nice [ +n|-n ] [ command ]

Increment the process priority value for the shell or for command by n. The higher the priority

value, the lower the priority of a process, and the slower it runs. When given, command is always

run in a subshell, and the restrictions placed on commands in simple if commands apply. If

command is omitted, nice increments the value for the current shell. If no increment is specified, nice

sets the nice value to 4. The range of nice values is from -20 through 19. Values of n outside this

range set the value to the lower, or to the higher boundary, respectively.

 

+n

     Increment the process priority value by n.

 

-n

     Decrement by n. This argument can be used only by the super-user.

 

nohup [ command ]

Run command with HUPs ignored. With no arguments, ignore HUPs throughout the remainder of a

script. When given, command is always run in a subshell, and the restrictions placed on commands

in simple if commands apply. All processes detached with & are effectively nohup'd.

 

notify [ %job ] ...

Notify the user asynchronously when the status of the current, or of specified jobs, changes.

 

onintr [ - | label]

Control the action of the shell on interrupts. With no arguments, onintr restores the default action of

the shell on interrupts. (The shell terminates shell scripts and returns to the terminal command input

level). With the - argument, the shell ignores all interrupts. With a label argument, the shell executes

a goto label when an interrupt is received or a child process terminates because it was interrupted.

 

popd [+n]

Pop the directory stack, and cds to the new top directory. The elements of the directory stack are

numbered from 0 starting at the top.

 

+n

     Discard the n'th entry in the stack.

 

pushd [+n | dir]

Push a directory onto the directory stack. With no arguments, exchange the top two elements.

 

+n

     Rotate the n'th entry to the top of the stack and cd to it. dir Push the current working

     directory onto the stack and change to dir.

 

rehash

     Recompute the internal hash table of the contents of directories listed in the path variable to

     account for new commands added.

 

repeat count command

Repeat command count times command is subject to the same restrictions as with the one-line if

statement.

 

set [var [ = value ] ]

set var[n] = word

With no arguments, set displays the values of all shell variables. Multiword values are displayed as a

parenthesized list. With the var argument alone, set assigns an empty (null) value to the variable var.

With arguments of the form var = value set assigns value to var, where value is one of:

 

word

     A single word (or quoted string). (wordlist) A space-separated list of words

 

enclosed in parentheses.

 

Values are command and filename expanded before being assigned. The form set var[n] = word

replaces the n'th word in a multiword value with word.

 

setenv [ VAR [ word ] ]

With no arguments, setenv displays all environment variables. With the VAR argument sets the

environment variable VAR to have an empty (null) value. (By convention, environment variables are

normally given upper-case names.) With both VAR and word arguments setenv sets the

environment variable NAME to the value word, which must be either a single word or a quoted

string. The most commonly used environment variables, USER, TERM, and PATH, are

automatically imported to and exported from the csh variables user, term, and path; there is no need

to use setenv for these. In addition, the shell sets the PWD environment variable from the csh

variable cwd whenever the latter changes.

 

shift [ variable ]

The components of argv, or variable, if supplied, are shifted to the left, discarding the first

component. It is an error for the variable not to be set, or to have a null value.

 

source [ -h ] name

Reads commands from name. source commands may be nested, but if they are nested too deeply

the shell may run out of file descriptors. An error in a sourced file at any level terminates all nested

source commands.

 

-h

     Place commands from the file name on the history list without executing them.

 

stop [%job] ...

Stop the current or specified background job.

 

suspend Stop the shell in its tracks, much as if it had been sent a stop signal with ^Z. This is most

often used to stop shells started by su.

 

switch (string)

case label:

...

breaksw

... default:

...

breaksw

 

endsw

     Each label is successively matched, against the specified string, which is first command and

     filename expanded. The file metacharacters *, ? and [...] may be used in the case labels,

     which are variable expanded. If none of the labels match before a "default" label is found,

     execution begins after the default label. Each case statement and the default statement must

     appear at the beginning of a line. The command breaksw continues execution after the endsw.

     Otherwise control falls through subsequent case and default statements as with C. If no label

     matches and there is no default, execution continues after the endsw.

 

time [ command ]

With no argument, print a summary of time used by this C shell and its children. With an optional

command, execute command and print a summary of the time it uses.

 

umask [ value ]

Display the file creation mask. With value set the file creation mask. value is given in octal, and is

XORed with the permissions of 666 for files and 777 for directories to arrive at the permissions for

new files. Common values include 002, giving complete access to the group, and read (and

directory search) access to others, or 022, giving read (and directory search) but not write

permission to the group and others.

 

unalias pattern

Discard aliases that match (filename substitution) pattern. All aliases are removed by unalias *.

 

unhash

     Disable the internal hash table.

 

unlimit [ -h ] [ resource ]

Remove a limitation on resource. If no resource is specified, then all resource limitations are

removed. See the description of the limit command for the list of resource names.

 

-h

     Remove corresponding hard limits. Only the super-user may do this.

 

unset pattern

Remove variables whose names match (filename substitution) pattern. All variables are removed by

`unset *'; this has noticeably distasteful sideeffects.

 

unsetenv variable

Remove variable from the environment. Pattern matching, as with unset is not performed.

 

wait

     Wait for background jobs to finish (or for an interrupt) before prompting.

 

while (expr)

...

 

end

     While expr is true (evaluates to non-zero), repeat commands between the while and the

     matching end statement. break and continue may be used to terminate or continue the loop

     prematurely. The while and end must appear alone on their input lines. If the shell's input is a

     terminal, it prompts for commands with a question-mark until the end command is entered

     and then performs the commands in the loop.

 

%[ job ] [ & ]

Bring the current or indicated job to the foreground. With the ampersand, continue running job in

the background.

 

@ [ var =expr ]

@ [ var[n] =expr ]

With no arguments, display the values for all shell variables. With arguments, the variable var, or the

n'th word in the value of var, to the value that expr evaluates to. (If [n] is supplied, both var and its

n'th component must already exist.)

 

If the expression contains the characters >, <, & or |, then at least this part of expr must be placed

within parentheses.

 

The operators *=, +=, etc., are available as in C. The space separating the name from the

assignment operator is optional. Spaces are, however, mandatory in separating components of expr

that would otherwise be single words.

 

Special postfix operators, ++ and -- increment or decrement name, respectively.

lpq: lpq displays the contents of a printer queue. It reports the status of jobs specified by job#, or all

jobs owned by the user specified by username. lpq reports on all jobs in the default printer queue

when invoked with no arguments.

 

For each print job in the queue, lpq reports the user's name, current position, the names of input files

comprising the job, the job number (by which it is referred to when using lprm(1)) and the total size

in bytes. Normally, only as much information as will fit on one line is displayed. Jobs are normally

queued on a first-in-first-out basis. Filenames comprising a job may be unavailable, such as when lpr

is used at the end of a pipeline; in such cases the filename field indicates ``(standard input)''.

 

If lpq warns that there is no daemon present (that is, due to some malfunction), the lpc(8) command

can be used to restart a printer daemon.

-P printer

     Display information about the queue for the specified printer. In the absence of the -P

     option, the queue to the printer specified by the PRINTER variable in the environment is

     used. If the PRINTER variable isn't set, the queue for the default printer is used.

 

-l

     Display queue information in long format; includes the name of the host from which the job

     originated.

 

+[ interval ]

     Display the spool queue periodically until it empties. This option clears the terminal screen

     before reporting on the queue. If an interval is supplied, lpq sleeps that number of seconds in

     between reports.

lpr: lpr creates a printer job in a spooling area for subsequent printing as facilities become available.

Each printer job consists of a control file and one or more data files. The data files are copies of (or,

with -s , symbolic links to) each filename you specify. The spool area is managed by the line printer

daemon, lpd(8). Jobs that specify a printer on a remote machine are forwarded by lpd.

 

lpr reads from the standard input if no files are specified.

-Pprinter

     Send output to the named printer. Otherwise send output to the printer named in the

     PRINTER environment variable, or to the default printer, lp.

 

-#copies

     Produce the number of copies indicated for each named file. For example:

 

example% lpr -#3 index.c lookup.c

 

produces three copies of index.c, followed by three copies of lookup.c. On the other hand,

 

example% cat index.c lookup.c | lpr -#3

 

generates three copies of the concatenation of the files.

 

-Cclass

     Print class as the job classification on the burst page. For example,

 

example% lpr -C Operations new.index.c

 

replaces the system name (the name returned by hostname) with "Operations" on the burst page,

and prints the file new.index.c.

 

-Jjob

     Print job as the job name on the burst page. Normally, lpr uses the first file's name.

 

-Ttitle

     Use title instead of the file name for the

 

title used by pr(1V).

 

-i[ indent ]

     Indent output indent SPACE characters. Eight SPACE characters is the default. The indent

     is passed to the input filter. If no input filter is present, this option is ignored. -1 font -2 font

     -3 font

 

-4 font

     Mount the specified font on font position 1, 2, 3 or 4. The daemon will construct a .railmag

     file in the spool directory that indicates the mount by referencing /usr/lib/vfont/font.

 

-wcols

     Use cols as the page width for pr.

 

-r

     Remove the file upon completion of spooling, or upon completion of printing with the -s

     option.

 

-m

     Send mail upon completion.

 

-h

     Suppress printing the burst page.

 

-s

     Create a symbolic link from the spool area to the data files rather than trying to copy them (so

     large files can be printed). This means the data files should not be modified or removed until

     they have been printed. This option can be used to avoid truncating files larger than the

     maximum given in the mx capability of the printcap(5) entry. -s only prevents copies of local

     files from being made. Jobs from remote hosts are copied anyway. -s only works with named

     data files; if the lpr command is at the end of a pipeline, the data is copied to the spool.

 

filter-option The following single letter options notify the line printer spooler that the files are not

standard text files. The spooling daemon will use the appropriate filters to print the data accordingly.

 

-p

     Use pr to format the files (lpr -p is very much like `pr | lpr'). -l Print control characters and

     suppress page breaks. -t The files contain troff(1) (cat phototypesetter) binary data. -n The

     files contain data from ditroff (device independent troff). -d The files contain data from tex

     (DVI format from Stanford). -g The files contain standard plot data as produced by the

     plot(3X) routines (see also plot(1G) for the filters used by the printer spooler). -v The files

     contain a raster image, see rasterfile(5). The printer must support an appropriate imaging

     model such as PostScript in order to print the image. -c The files contain data produced by

     cifplot. -f Interpret the first character of each line as a standard FORTRAN carriage control

     character.

 

If no filter-option is given (and the printer can interpret PostScript), the string `%!' as the first two

characters of a file indicates that it contains PostScript commands.

 

These filter options offer a standard user interface, and all options may not be available for, nor

applicable to, all printers.

lprm: lprm removes a job or jobs from a printer's spooling queue. Since the spool directory is protected

from users, using lprm is normally the only method by which a user can remove a job.

 

Without any arguments, lprm deletes the job that is currently active, provided that the user who

invoked lprm owns that job.

 

When the super-user specifies a username, lprm removes all jobs belonging to that user.

 

You can remove a specific job by supplying its job number as an argument, which you can obtain

using lpq(1). For example:

 

example% lpq -Phost

host is ready and printing

Rank Owner Job Files Total Size active wendy 385 standard input 35501 bytes example% lprm

-Phost 385

 

lprm reports the names of any files it removes, and is silent if there are no applicable jobs to remove.

 

lprm kills the active printer daemon, if necessary, before removing spooled jobs; it restarts the

daemon when through.

-Pprinter

     Specify the queue associated with a specific printer. Otherwise the value of the PRINTER

     variable in the environment is used. If this variable is unset, the queue for the default printer is

     used.

 

-

     Remove all jobs owned by you. If invoked by the super-user, all jobs in the spool are

     removed. (Job ownership is determined by the user's login name and host name on the

     machine where the lpr command was invoked).

ls: -a, --all

List all files in directories, including all files that start with `.'.

 

-b, --escape

     Quote nongraphic characters in file names using alphabetic and octal backslash sequences

     like those used in C.

 

-c, --time=ctime, --time=status

     Sort directory contents according to the files' status change time instead of the modification

     time. If the long listing format is being used, print the status change time instead of the

     modification time.

 

-d, --directory

     List directories like other files, rather than listing their contents.

 

-f

     Do not sort directory contents; list them in whatever order they are stored on the disk. The

     same as enabling -a and -U and disabling -l, -s, and -t.

 

--full-time

     List times in full, rather than using the standard abbreviation heuristics.

 

-g

     Ignored; for Unix compatibility.

 

-i, --inode

     Print the index number of each file to the left of the file name.

 

-k, --kilobytes

     If file sizes are being listed, print them in kilobytes. This overrides the environment variable

     POSIXLY_CORRECT.

 

-l, --format=long, --format=verbose

     In addition to the name of each file, print the file type, permissions, number of hard links,

     owner name, group name, size in bytes, and timestamp (the modification time unless other

     times are selected). For files with a time that is more than 6 months old or more than 1 hour

     into the future, the timestamp contains the year instead of the time of day.

 

-m, --format=commas

     List files horizontally, with as many as will fit on each line, separated by commas.

 

-n, --numeric-uid-gid

     List the numeric UID and GID instead of the names.

 

-p

     Append a character to each file name indicating the file type.

 

-q, --hide-control-chars

     Print question marks instead of nongraphic characters in file names.

 

-r, --reverse

     Sort directory contents in reverse order.

 

-s, --size

     Print the size of each file in 1K blocks to the left of the file name. If the environment variable

     POSIXLY_CORRECT is set, 512-byte blocks are used instead.

 

-t, --sort=time

 

Sort directory contents by timestamp instead of alphabetically, with the newest files listed first.

 

-u, --time=atime, --time=access, --time=use

     Sort directory contents according to the files' last access time instead of the modification time.

     If the long listing format is being used, print the last access time instead of the modification

     time.

 

-x, --format=across, --format=horizontal

     List the files in columns, sorted horizontally.

 

-A, --almost-all

     List all files in directories, except for `.' and `..'.

 

-B, --ignore-backups

     Do not list files that end with `~', unless they are given on the command line.

 

-C, --format=vertical

     List files in columns, sorted vertically.

 

-F, --classify

     Append a character to each file name indicating the file type. For regular files that are

     executable, append a `*'. The file type indicators are `/' for directories, `@' for symbolic

     links, `|' for FIFOs, `=' for sockets, and nothing for regular files.

 

-G, --no-group

     Inhibit display of group information in a long format directory listing.

 

-L, --dereference

     List the files linked to by symbolic links instead of listing the contents of the links.

 

-N, --literal

     Do not quote file names.

 

-Q, --quote-name

     Enclose file names in double quotes and quote nongraphic characters as in C.

 

-R, --recursive

     List the contents of all directories recursively.

 

-S, --sort=size

     Sort directory contents by file size instead of alphabetically, with the largest files listed first.

 

-U, --sort=none

 

Do not sort directory contents; list them in whatever order they are stored on the disk. This option is

not called -f because the Unix ls -f option also enables -a and disables -l, -s, and -t. It seems

useless and ugly to group those unrelated things together in one option. Since this option doesn't do

that, it has a different name.

 

-X, --sort=extension

     Sort directory contents alphabetically by file extension (characters after the last `.'); files with

     no extension are sorted first.

 

-1, --format=single-column

     List one file per line.

 

-w, --width cols

     Assume the screen is cols columns wide. The default is taken from the terminal driver if

     possible; otherwise the environment variable COLUMNS is used if it is set; otherwise the

     default is 80.

 

-T, --tabsize cols

     Assume that each tabstop is cols columns wide. The default is 8.

 

-I, --ignore pattern

     Do not list files whose names match the shell pattern pattern unless they are given on the

     command line. As in the shell, an initial `.' in a filename does not match a wildcard at the start

     of pattern.

 

--color, --colour, --color=yes, --colour=yes

     Colorize the names of files depending on the type of file. See DISPLAY COLORIZATION

     below.

 

--color=tty, --colour=tty

     Same as --color but only if standard output is a terminal. This is very useful for shell scripts

     and command aliases, especially if your favorite pager does not support color control codes.

 

--color=no, --colour=no

     Disables colorization. This is the default. Provided to override a previous color option.

 

--help

     Print a usage message on standard output and exit successfully.

 

--version

     Print version information on standard output then exit successfully.

 

DISPLAY COLORIZATION

When using the --color option, this version of ls will colorize the file names printed according to the

name and type of file. By default, this colorization is by type only, and the codes used are ISO 6429

(ANSI) compliant.

 

You can override the default colors by defining the environment variable LS_COLORS (or

LS_COLOURS). The format of this variable is reminicent of the termcap(5) file format; a

colon-separated list of expressions of the form "xx=string", where "xx" is a two-character variable

name. The variables with their associated defaults are:

 

no

     0 Normal (non-filename) text

 

fi

     0 Regular file di 32 Directory

 

ln

     36 Symbolic link

 

pi

     31 Named pipe (FIFO) so 33 Socket

 

bd

     44;37 Block device

 

cd

     44;37 Character device

 

ex

     35 Executable file

 

mi

     (none) Missing file (defaults to fi)

 

or

     (none) Orphanned symbolic link (defaults to ln)

 

lc

     \e[ Left code

 

rc

     m Right code

 

ec

     (none) End code (replaces lc+no+rc)

 

You only need to include the variables you want to change from the default.

 

File names can also be colorized based on filename extension. This is specified in the LS_COLORS

variable using the syntax "*ext=string". For example, using ISO 6429 codes, to color all C-language

source files blue you would specify "*.c=34". This would color all files ending in .c in blue (34)

color.

 

Control characters can be written either in C-style \escaped notation, or in stty-like ^-notation. The

C-style notation adds \e for Escape, \_ for a normal space characer, and \? for Delete. In addition,

the \ escape character can be used to override the default interpretation of \, ^, : and =.

 

Each file will be written as <lc> <color code> <rc> <filename> <ec>. If the <ec> code is

undefined, the sequence <lc> <no> <rc> will be used instead. This is generally more convenient to

use, but less general. The left, right and end codes are provided so you don't have to type common

parts over and over again and to support weird terminals; you will generally not need to change

them at all unless your terminal does not use ISO 6429 color sequences but a different system.

 

If your terminal does use ISO 6429 color codes, you can compose the type codes (i.e. all except

the lc, rc, and ec codes) from numerical commands separated by semicolons. The most common

commands are:

 

0

     to restore default color

 

1

     for brighter colors

 

4

     for underlined text

 

5

     for flashing text

 

30

     for black foreground

 

31

     for red foreground

 

32

     for green foreground

 

33

     for yellow (or brown) foreground

 

34

     for blue foreground

 

35

     for purple foreground

 

36

     for cyan foreground

 

37

     for white (or gray) foreground

 

40

     for black background

 

41

     for red background

 

42

     for green background

 

43

     for yellow (or brown) background

 

44

     for blue background

 

45

     for purple background

 

46

     for cyan background

 

47

     for white (or gray) background

 

Not all commands will work on all systems or display devices.

 

A few terminal programs do not recognize the default end code properly. If all text gets colorized

after you do a directory listing, try changing the no and fi codes from 0 to the numerical codes for

your standard fore- and background colors.

mail: mail is a comfortable, flexible, interactive program for composing, sending and receiving electronic

messages. While reading messages, mail provides you with commands to browse, display, save,

delete, and respond to messages. While sending mail, mail allows editing and reviewing of messages

being composed, and the inclusion of text from files or other messages.

 

Incoming mail is stored in the system mailbox for each user. This is a file named after the user in

/var/spool/mail. mail normally looks in this file for incoming messages, but you can use the MAIL

environment variable to have it look in a different file. When you read a message, it is marked to be

moved to a secondary file for storage. This secondary file, called the mbox, is normally the file

mbox in your home directory. This file can also be changed by setting the MBOX environment

variable. Messages remain in the mbox file until deliberately removed.

If no recipient is specified, mail attempts to read messages from the system mailbox.

 

-d

     Turn on debugging output. (Neither particularly interesting nor recommended.)

 

-e

     Test for presence of mail. If there is no mail, mail prints nothing and exits (with a successful

     return code).

 

-F

     Record the message in a file named after the first recipient. Override the record variable, if

     set.

 

-H

     Print header summary only.

 

-i

     Ignore interrupts (as with the ignore variable).

 

-n

     Do not initialize from the system default Mail.rc file.

 

-N

     Do not print initial header summary.

 

-U

     Convert uucp style addresses to Internet standards. Overrides the conv environment variable.

 

-v

     Pass the -v flag to sendmail(8).

 

-f [filename] Read messages from filename instead of

     system mailbox. If no filename is specified, the mbox is used.

 

-f +folder

     Use the file folder in the folder directory (same as the folder command). The name of this

     directory is listed in the folder variable.

 

-h number

     The number of network "hops" made so far. This is provided for network software to avoid

     infinite delivery loops.

 

-r address

     Pass address to network delivery software. All tilde (~) commands are disabled.

 

-s subject

     Set the Subject header field to subject.

 

-T file

     Print the contents of the article-id fields of all messages that were read or deleted on file (for

     the use of network news programs if available).

 

-u user

     Read user's system mailbox. This is only effective if user's system mailbox is not read

     protected.

man: man displays information from the reference manuals. It can display complete manual pages that you

select by title, or one-line summaries selected either by keyword (-k), or by the name of an

associated file (-f).

 

A section, when given, applies to the titles that follow it on the command line (up to the next

section, if any). man looks in the indicated section of the manual for those titles. section is either a

digit (perhaps followed by a single letter indicating the type of manual page), or one of the words

new, local, old, or public. The abbreviations n, l, o and p are also allowed. If section is omitted,

man searches all reference sections (giving preference to commands over functions) and prints the

first manual page it finds. If no manual page is located, man prints an error message.

 

The reference page sources are typically located in the /usr/man/man? directories. Since these

directories are optionally installed, they may not reside on your host; you may have to mount

/usr/man from a host on which they do reside. If there are preformatted, up-to-date versions in

corresponding cat? or fmt? directories, man simply displays or prints those versions. If the

preformatted version of interest is out of date or missing, man reformats it prior to display. If

directories for the preformatted versions are not provided, man reformats a page whenever it is

requested; it uses a temporary file to store the formatted text during display.

 

If the standard output is not a terminal, or if the `-' flag is given, man pipes its output through

cat(1V). Otherwise, man pipes its output through more(1) to handle paging and underlining on the

screen.

-t man arranges for the specified manual pages to be troffed to a suitable raster output device (see

troff(1) or vtroff(1)). If both the - and -t flags are given, man updates the troffed versions of each

named title (if necessary), but does not display them.

 

-M path

     Change the search path for manual pages. path is a colon-separated list of directories that

     contain manual page directory subtrees. For example, /usr/man/u_man:/usr/man/a_man

     makes man search in the standard System V locations. When used with the -k or -f options,

     the -M option must appear first. Each directory in the path is assumed to contain

     subdirectories of the form man[1-8l-p].

 

-T macro-package

     man uses macro-package rather than the standard -man macros defined in

     /usr/lib/tmac/tmac.an for formatting manual pages.

 

-k keyword ...

     man prints out one-line summaries from the whatis database (table of contents) that contain

     any of the given keywords. The whatis database is created using the catman(8) command

     with the -w option.

 

-f filename ...

     man attempts to locate manual pages related to any of the given filenames. It strips the

     leading pathname components from each filename, and then prints one-line summaries

     containing the resulting basename or names. This option also uses the whatis database.

mkdir: mkdir creates directories. Standard entries, `.', for the directory itself, and `..' for its parent, are

made automatically.

 

The -p flag allows missing parent directories to be created as needed.

 

With the exception of the set-gid bit, the current umask(2V) setting determines the mode in which

directories are created. The new directory inherits the set-gid bit of the parent directory. Modes

may be modified after creation by using chmod(1V).

 

mkdir requires write permission in the parent directory.

more: more is a filter that displays the contents of a text file on the terminal, one screenful at a time. It

normally pauses after each screenful, and prints --More-- at the bottom of the screen. more

provides a two-line overlap between screens for continuity. If more is reading from a file rather than

a pipe, the percentage of characters displayed so far is also shown.

 

more scrolls up to display one more line in response to a RETURN character; it displays another

screenful in response to a SPACE character. Other commands are listed below.

 

page clears the screen before displaying the next screenful of text; it only provides a one-line overlap

between screens.

 

more sets the terminal to noecho mode, so that the output can be continuous. Commands that you

type do not normally show up on your terminal, except for the / and ! commands.

 

If the standard output is not a terminal, more acts just like cat(1V), except that a header is printed

before each file in a series.

-c Clear before displaying. Redrawing the screen instead of scrolling for faster displays. This option

is ignored if the terminal does not have the ability to clear to the end of a line.

 

-d

     Display error messages rather than ringing the terminal bell if an unrecognized command is

     used. This is helpful for inexperienced users.

 

-f

     Do not fold long lines. This is useful when lines contain nonprinting characters or escape

     sequences, such as those generated when nroff(1) output is piped through ul(1).

 

-l

     Do not treat FORMFEED characters (CTRL-D) as "page breaks." If -l is not used, more

     pauses to accept commands after any line containing a ^L character (CTRL-D). Also, if a file

     begins with a FORMFEED, the screen is cleared before the file is printed.

 

-s

     Squeeze. Replace multiple blank lines with a single blank line. This is helpful when viewing

     nroff(1) output, on the screen.

 

-u

     Suppress generation of underlining escape sequences. Normally, more handles underlining,

     such as that produced by nroff(1), in a manner appropriate to the terminal. If the terminal can

     perform underlining or has a stand-out mode, more supplies appropriate escape sequences as

     called for in the text file.

 

-lines

     Display the indicated number of lines in each screenful, rather than the default (the number of

     lines in the terminal screen less two).

 

+linenumber

     Start up at linenumber.

 

+/pattern

     Start up two lines above the line containing the regular expression pattern. Note: unlike

     editors, this construct should not end with a `/'. If it does, then the trailing slash is taken as a

     character in the search pattern.

mv: mv moves files and directories around in the file system. A side effect of mv is to rename a file or

directory. The three major forms of mv are shown in the synopsis above.

 

The first form of mv moves (changes the name of) filename1 to filename2. If filename2 already

exists, it is removed before filename1 is moved. If filename2 has a mode which forbids writing, mv

prints the mode (see chmod(2V)) and reads the standard input to obtain a line; if the line begins with

y, the move takes place, otherwise mv exits.

 

The second form of mv moves (changes the name of) directory1 to directory2, only if directory2

does not already exist if it does, the third form applies.

 

The third form of mv moves one or more filenames (may also be directories) with their original

names, into the last directory in the list.

 

mv refuses to move a file or directory onto itself.

-

     Interpret all the following arguments to mv as file names. This allows file names starting with

     minus.

 

-f

     Force. Override any mode restrictions and the -i option. The -f option also suppresses any

     warning messages about modes which would potentially restrict overwriting.

 

-i

     Interactive mode. mv displays the name of the file or directory followed by a question mark

     whenever a move would replace an existing file or directory. If you type a line starting with y,

     mv moves the specified file or directory, otherwise mv does nothing with that file or directory.

passwd: passwd changes (or installs) a password, login shell (-s option), or full name (-f option) associated

with the user username (your own by default). chsh is equivalent to passwd with the -s option, and

chfn is equivalent to passwd with the -f option.

 

Use `passwd -y' or yppasswd(1) to change your password in the Network Information Service

(NIS). This will not affect your local password, or your password on any remote machines on which

you have accounts. passwd calls yppasswd automatically if you do not have an entry in the local

passwd file, and the -l option is not specified.

 

When changing a password, passwd prompts for the old password and then for the new one. You

must supply both, and the new password must be typed twice to forestall mistakes.

 

If password aging is enabled, the first time an ordinary user enters the new password passwd

checks to see if the old password has "aged" sufficiently. Password "aging" is the amount of time

(usually a certain number of days) that must elapse between password changes. If "aging" is

insufficient the new password is rejected and passwd terminates.

 

New passwords should be at least five characters long, if they combine upper-case and lower-case

letters, or at least six characters long if in monocase. Users that persist in entering shorter passwords

are compromising their own security. The number of significant characters in a password is eight,

although longer passwords will be accepted.

 

Only the owner of the name or the super-user may change a password; the owner must prove he

knows the old password. The super-user can change any password and is not forced to comply

with password aging requirements.

 

When changing a login shell, passwd displays the current login shell and then prompts for the new

one. The new login shell must be one of the approved shells listed in /etc/shells unless you are the

super-user. If /etc/shells does not exist, the only shells that may be specified are /bin/sh and /bin/csh.

 

The super-user may change anyone's login shell; normal users may only change their own login shell.

 

When changing a full name, passwd displays the current full name, enclosed between brackets, and

prompts for a new full name. If you type a RETURN, the full name is not changed. If the full name is

to be made blank, you must type the word "none".

 

The super-user may change anyone's full name; normal users may only change their own.

-a Display the name and aging information for all users. Can only be invoked by the super-user.

 

-f

     Change the full name.

 

-l

     Change the local password, login shell, or full name. If username exists in the local passwd

     file, this is the default.

 

-s

     Change the login shell.

 

-y

     Change passwd, login shell, or full name in the NIS database.

 

-d [username]

     Display the name and aging information for the caller or the user specified if the invoker has

     the right privileges.

 

-e username

     Expire the password for the user name specified. Can only be invoked by the super-user.

 

-F filename

     Treat filename as the password file.

 

-n numdays username

     Set the maturity time of the password for username. Passwords that have not "aged" enough

     cannot be changed. Can only be set by the super-user.

 

-x numdays username

 

Set the expiration time of the password for username. Can only be set by the super-user.

ps: ps displays information about processes. Normally, only those processes that are running with your

effective user ID and are attached to a controlling terminal (see termio(4)) are shown. Additional

categories of processes can be added to the display using various options. In particular, the -a

option allows you to include processes that are not owned by you (that do not have your user ID),

and the -x option allows you to include processes without control terminals. When you specify both

-a and -x, you get processes owned by anyone, with or without a control terminal. The -r option

restricts the list of processes printed to "running" processes: runnable processes, those in page wait,

or those in short-term non-interruptible waits.

 

ps displays the process ID, under PID; the control terminal (if any), under TT; the cpu time used by

the process so far, including both user and system time), under TIME; the state of the process,

under STAT; and finally, an indication of the COMMAND that is running.

 

The state is given by a sequence of four letters, for example, `RWNA'.

 

First letter

     indicates the runnability of the process:

 

R

     Runnable processes.

 

T

     Stopped processes.

 

P

     Processes in page wait.

 

D

     Processes in non-interruptible waits; typically short-term waits for disk or NFS I/O.

 

S

     Processes sleeping for less than about 20 seconds.

 

I

     Processes that are idle (sleeping longer than about 20 seconds).

 

Z

     Processes that have terminated and that are waiting for their parent process to do a wait(2V)

     ("zombie" processes).

 

Second letter indicates whether a process is swapped out; blank Represented as a SPACE

character, in this position indicates that the process is loaded (in memory).

 

W

     Process is swapped out.

 

>

     Process has specified a soft limit on memory requirements and has exceeded that limit; such a

     process is (necessarily) not swapped.

 

Third letter indicates whether a process is running with altered CPU scheduling priority (nice(1)):

blank Represented as a SPACE character, in this position indicates that the process is running

without special treatment.

 

N

     The process priority is reduced,

 

<

     The process priority has been raised artificially.

 

Fourth letter indicates any special treatment of the process for virtual memory replacement. The

letters correspond to options to the vadvise(2) system call. Currently the possibilities are:

blank Represented as a SPACE character, in this position stands for VA_NORM.

 

A

     Stands for VA_ANOM. An A typically represents a program which is doing garbage

     collection.

 

S

     Stands for VA_SEQL. An S is typical of large image processing programs that are using

     virtual memory to sequentially address voluminous data.

 

kernel-name specifies the location of the system namelist. If the -k option is given, c-dump-file tells

ps where to look for the core dump. Otherwise, the core dump is located in the file /vmcore and this

argument is ignored. swap-file gives the location of a swap file other than the default, /dev/drum.

pwd: pwd prints the pathname of the working (current) directory.

 

If you are using csh(1), you can use the dirs builtin command to do the same job more quickly; but

dirs can give a different answer in the rare case that the current directory or a containing directory

was moved after the shell descended into it. This is because pwd searches back up the directory

tree to report the true pathname, whereas dirs remembers the pathname from the last cd(1)

command. The example below illustrates the differences.

 

example% cd /usr/wendy/january/reports example% pwd

/usr/wendy/january/reports

example% dirs

~/january/reports

example% mv ~/january ~/february

example% pwd

/usr/wendy/february/reports

example% dirs

~/january/reports

example%

 

pwd and dirs also give different answers when you change directory through a symbolic link. For

example: example% cd /usr/wendy/january/reports example% pwd

/usr/wendy/january/reports

example% dirs

~/january/reports

example% ls -l /usr/wendy/january

lrwxrwxrwx 1 wendy 17 Jan 30 1983 /usr/wendy/january -> /usr/wendy/1984/jan/ example% cd

/usr/wendy/january

example% pwd

/usr/wendy/1984/jan

example% dirs

/usr/wendy/january

 

The pathnames of files mounted with the Automounter can also change if the file is not used for a

certain time interval (the default is five minutes).

rm: rm removes (directory entries for) one or more files. If an entry was the last link to the file, the

contents of that file are lost. See ln(1V) for more information about multiple links to files.

 

To remove a file, you must have write permission in its directory; but you do not need read or write

permission on the file itself. If you do not have write permission on the file and the standard input is a

terminal, rm displays the file's permissions and waits for you to type in a response. If your response

begins with y the file is deleted; otherwise the file is left alone.

 

rmdir removes each named directory. rmdir only removes empty directories.

-

     Treat the following arguments as filenames `-' so that you can specify filenames starting with a

     minus.

 

-f

     Force files to be removed without displaying permissions, asking questions or reporting

     errors.

 

-i

     Ask whether to delete each file, and, under -r, whether to examine each directory.

     Sometimes called the interactive option.

 

-r

     Recursively delete the contents of a directory, its subdirectories, and the directory itself.

rmdir: rm removes (directory entries for) one or more files. If an entry was the last link to the file, the

contents of that file are lost. See ln(1V) for more information about multiple links to files.

 

To remove a file, you must have write permission in its directory; but you do not need read or write

permission on the file itself. If you do not have write permission on the file and the standard input is a

terminal, rm displays the file's permissions and waits for you to type in a response. If your response

begins with y the file is deleted; otherwise the file is left alone.

 

rmdir removes each named directory. rmdir only removes empty directories.

-

     Treat the following arguments as filenames `-' so that you can specify filenames starting with a

     minus.

 

-f

     Force files to be removed without displaying permissions, asking questions or reporting

     errors.

 

-i

     Ask whether to delete each file, and, under -r, whether to examine each directory.

     Sometimes called the interactive option.

 

-r

     Recursively delete the contents of a directory, its subdirectories, and the directory itself.

spell: spell collects words from the named files, and looks them up in a hashed spelling list. Words that do

not appear in the list, or cannot be derived from those that do appear by applying certain inflections,

prefixes or suffixes, are displayed on the standard output.

 

If there are no filename arguments, words to check are collected from the standard input. spell

ignores most troff(1), tbl(1), and eqn(1) constructs. Copies of all output words are accumulated in

the history file, and a stop list filters out misspellings (for example, their=thy-y+ier) that would

otherwise pass.

 

By default, spell (like deroff(1)) follows chains of included files (.so and .nx troff(1) requests),

unless the names of such included files begin with /usr/lib.

 

If a +local_file argument is specified, words found in local_file are removed from spell's output.

local_file is the name of a user-provided file that contains a sorted list of words, one per line. With

this option, the user can specify a set of words that are correct spellings (in addition to spell's own

spelling list) for each job.

 

The standard spelling list is based on many sources, and while more haphazard than an ordinary

dictionary, is also more effective in respect to proper names and popular technical words. Coverage

of the specialized vocabularies of biology, medicine and chemistry is light.

 

Three programs help maintain and check the hash lists used by spell:

 

hashmake

     Reads a list of words from the standard input and writes the corresponding nine-digit hash

     code on the standard output.

 

spellin

     Reads n hash codes from the standard input and

 

writes a compressed spelling list on the standard output.

 

hashcheck Reads a compressed spelling_list and recreates the nine-digit hash codes for all the

words in it; it writes these codes on the standard output.

-b

     Check British spelling. Besides preferring "centre", "colour", "programme", "speciality",

     "travelled", and so on, this option insists upon -ise in words like standardize, despite what

     Fowler and the OED say.

 

-l

     Follow the chains of all included files.

 

-v

     Print all words not literally in the spelling list, as well as plausible derivations from spelling list

     words.

 

-x

     Print every plausible stem with `=' for each word.

 

-d hlist

     Use the file hlist as the hashed spelling list.

 

-h spellhist

     Place misspelled words with a user/date stamp in file spellhist.

 

-s hstop

     Use hstop as the hashed stop list.

 

 

Not all command descriptions were listed here. But look for the update to this text, it will have more commands and more descriptions. This text file was just one of the many files made by The Psychotic Internet Services.