UNIX Commands

date  Writes the current date to the screen

Example: date Mon Nov 20 18:25:37 EST 2000

sort infile   Sorts the contents of the input file in alphabetical order

Example: sort names   Sorts the contents of names in alphabetical order

who  Tells you who is logged onto your server

who am I   Tells you your user information
who am i
whoami

clear   Clears the window and the line buffer

echo   Writes whatever I type to the screen.

Example: echo hey you!   Writes hey you! to the screen

banner   Does the same thing as echo only in BIG words

Example: banner hey!   Writes hey! in large letters on the screen

cat file1 file2 file3  Shows the three files in consecutive order as one 
                       document (can be used to combine files)

Example: cat cheese milk   This prints the cheese file to the screen first and 
                           immediately follows it with the milk file.

df system   Reports the number of free disk blocks

df $HOME   Either command will print the total kb space, kb used, kb available, 
df ~       and %used on the home system (your system).

head file   Prints the first 10 lines of the file to the screen
            
Example: head addresses  Prints the first 10 lines of addresses to the screen

NOTE:  Number of lines can be modified

head -25 addresses   Prints the first 25 lines of addresses to the screen

tail file    Prints the last 10 lines of the file to the screen

Exmple: tail test.txt   Prints the last 10 lines of test.txt to the screen

NOTE: Number of lines can be modified here, too

tail -32 test.txt  Prints the last 32 lines of test.txt to the screen

more input    This prints to screen whatever is input÷useful because it only 
              shows one screen at a time.

Example: more groceries   This will list the groceries file to the screen.
                          Scroll bar continues to the next screen.  Return 
                          moves one line forward

Q   Quits

G   Goes to the end

1G   Goes to the beginning

Ctrl u   Moves up ¸  screen

Ctrl d   Moves down ¸ screen

ls   (-option-optional)  Lists all the nonhidden files and directories.
     Lists all nonhidden files and directories in the current directory

Example: ls bin  Lists all nonhidden files and directories in the bin directory

ls -l  Either lists all nonhidden files and directories in long format
ll

Example: ls -l  Either lists all nonhidden files and directories in the current   
         ll     directory in long format

Example: ls -l work   Either lists all nonhidden files and directories in the 
         ll           work directory in long format

ls -a  Lists all files and directories including hidden ones.

Example: ls -a  Lists all files and directories, including hidden, in the 
                current directory

ls -a temp   Lists all files and directories in the temp directory.

ls -r  Lists all files and directories in reverse alphabetical order

Example: ls -r   Lists all nonhidden files and directories in the current  
                 directory in reverse alphabetical order

Example: ls -r abc  Lists all nonhidden files and directories in the abc 
                    directory in reverse alphabetical order

ls -t   Lists all nonhidden files in the order they were last modified

Example: ls -t   Lists all the nonhidden files in the current directory in the 
                 order they were last modified from most recent to last

Example  ls -t work  Lists all the nonhidden files in the work directory in the
                     oder they were last modified from most recent to last

NOTE: Options can be combined using ls

ls -al  Lists all files (including hidden (-a)) in long format (-l)

***Important Characters***

|   "pipe" directs the output of the first command to the input of another.

>   Sends the output of a command to a designated file. 

>>  Appends the output of a command to a designated file.  

&   Runs command in the background; you can still work in the window

~   Designates the home directory ($HOME)

<   Designates input from somewhere other than terminal

ls -l | more   Lists your files in long format one screen at a time

ls -l > myfiles   Prints your listing to a file named myfiles

ls -l >> allfiles   Appends your filenames to the end of the allfiles file

xclock &   Runs xclock (a clock) allowing you to keep working

echo ~   Writes your home directory to the screen

progA < input1    progA program gets its input from a file named input1

***Wildcards***  UNIX has a set of wildcards that it accepts.

*   Any string of characters

?   Any one character

[  ]  Match any character in the brackets (a hyphen is used for ranges of 
      characters)

ls *.c  Lists any file or directory (nonhidden) ending with c

ls file?  Lists any file/directory with file and 1 character at the end

ls v[6-9]file  Lists v6file, v7file, v8file, and v9file

cd directory  Changes your current directory to the directory specified

cd bin  Changes directory to the bin directory

cd ..  Moves you to the directory that contains the directory you're currently in 
       Example: Current directory=/home/users/bob/bin and execute cd ..
       New directory=/home/users/bob

cd ../..  Example: Current directory=/home/users/bob/bin and execute cd ../..
          New directory= /home/users.

cd -  Moves you to the directory you just came from

cd ~  Either moves you to your home directory (the directory you start from 
cd    initially)

mkdir dirname  Creates a directory

Example: mkdir junk   Makes a directory named junk in your current directory

NOTE: You can also designate where the directory is to reside.

mkdir ~/left   Makes a directory in your home directory named left

rm file1 file2 file3  Removes (deletes) file(s)

Example: rm xyz  Deletes a file named xyz

Example: rm xyz abc Deletes the files named xyz and abc

rm *  Deletes everything nonhidden

rm -i file1 file2  Prompts before deletion of files

CAUTION: Use -i at first to avoid inadvertent deletions

rm -i *  Prompts at each nonhidden file and lets you decide whether or not 
         to delete it

rm -f file1 file2  Forces deletion without prompt regardless of permissions

rm -f program   Removes the file program without regard to permissions, status, etc.

CAUTION: Can be dangerous

rm -r directory  Recursively remove a directory along with anything inside of it
rm -R directory 

Example: rm -r bin   Either of these will remove the bin directory and  
         rm -R bin   everything inside it. 

rmdir directory  Removes a directory like rm -r does if the directory is empty

Example: rmdir bin  Removes the bin directory if it is empty

WARNING: Use of the -fR or -Rf option is very dangerous

rm -fR name  This combination will force the removal of any file and any directory 
rm -Rf name  including anything inside of it

Example: rm -Rf c_ya  Forces removal without prompts of the c_ya directory and 
                      anything inside of it

rm -Ri directory   Deletes the contents of a directory and the directory if it is 
                   empty by prompting the user before each deletion

Example: rm -Ri rusure   Deletes anything in the directory called rusure that you 
                         verify at the prompt, and if you remove everything in the 
                         directory, you will be prompted whether you want to remove 
                         the directory itself or not

NOTE: Options can be combined using rm

rmdir -p directory   Removes a directory and any empty parent directories above it 
                     (-pi does the same thing but it prompts before each removal)

Example: rmdir -p /home/bin/dir1   Deletes the dir1 directory; if bin directory is 
                                   empty, it is deleted, and if home directory is 
                                   empty it is also deleted

cp file1 newname   Copies a file (file1) and names the copy the new name (newname)

Example: cp old new   Makes a copy of the file/directory named old and names the 
                      copy new, all within the current directory

NOTE: If you copy a file to a newfile name and newfile already exists, the newfile 
      contents will be overwritten.

cp file dir2/   Places a copy of file in dir2/ and it retains its original name

cp ../dir1/* .  Copies everything from the dir1 directory located just below where 
                you currently are and places the copy "here" ( . ) in your current 
                directory

cp -p name target  Preserves all permissions in the original to the target

Example: cp -p execut1 execut2   Copies execut1 executable file and calls the
                                 copy execut2, which also has executable 
                                 permissions

cp -R directory target   Copies a directory and names the copy the new name target

Example: cp -R old/ junk/   Makes a copy of the directory named old and names the  
                            directory copy junk

cp -f name target  Forces existing pathnames to be destroyed before copying the file

mv initial final   Renames files and directories

Example: mv temp script_1  Renames the file (or directory) temp to the name script_1 
                           in the current directory.  Also moves files to other 
                           directories

Example: mv script.exe ~/bin   Moves the script.exe file to the bin directory that 
                               is in the home (~) parent directory and it keeps its 
                               initial name

NOTE:  You can do multiple moves

mv script_1 script.exe ~/bin   Moves both script_1 and script.exe to the bin directory

pwd  Prints the path of the current directory to the screen.  May print something 
     like "/home/bob"

pr (option) filename   Prints the specified file to the default printer (options are 
                       not required but can be combined in any order)

Example: pr userlist   Prints the contents of userlist to the default printer

pr +k filename   Starts printing with page k

Example: pr +5 userlist   Prints the contents of userlist starting with page 5

pr -k filename   Prints in k columns

Example: pr -2 userlist   Prints the contents of userlist in 2 columns

pr -a filename   Prints in multicolumns across the page (use with -k)

Example: pr -3a userlist1   Prints userlist in three columns across the page

pr -d filename   Prints in double space format

Example: pr -d userlist   Prints userlist with double space format

pr  -h "header" filename   Prints the file with a specified header rather 
                           than the filename

Example: pr -h "users" userlist   Prints userlist with users as the header

NOTE: Options can be combined using pr

lpconfig printer_id queue   Configures remote printers to a local print queue

Example: lpconfig prntr1 bobprt   Configures a printer named prntr1 to accept 
                                  print requests from a local queue named bobprt

lpconfig -r queue   Removes the said queue from the local system

Example: lpconfig -r bobprt   Removes bobprt queue from the local system if the 
                              person removing the queue is the owner or "root"

lpconfig -d queue   Makes the said queue the default queue

Example: lpconfig -d vpprnt  Makes vpprnt the default print queue

lpstat (-options)  Prints printer status information to screen (options 
                   not required)

Example: lpstat   Prints status of all requests made to the default printer 
                  by the current server

lpstat -u"user1, user2"  Prints the status of requests made by the specified users

lpstat -u"bob"  Prints status of all requests made by the user with the id bob

lpstat s   Prints the queues and the printers they print to none

lpstat -t  Shows all print status information

lpstat -d  Shows the default printer for the lp command

lpstat -r  Lets you know if the line printer scheduler is running

lp (-option) file(s)  Like pr, this prints designated files on the connected 
                      printer(s) (options not required and options may be combined)

Example: lp junkfile   Prints the file junkfile to the default printer in default 
                       one-sided, single-sided, single-spaced format

lp -ddest file(s)  Prints the file(s) to a specific destination

lp -dbobsq zoom   Sends the file zoom to the bobsq print queue to print

lp -nnumber file(s)   Allows user to designate the number of copies to be printed

lp -n5 crash   Prints five copies of crash in default settings

lp -ttitle file(s)  Places title on the banner page

lp -tBobs cash   Prints Bobs on the banner page of the file printout named cash

lp -ooption file(s)  Allows printer-specific options to be used (i.e., double-sided 
                     or two pages per side, etc.)

lp -od output   Prints the output file double-sided on the printout

lp -obold output  Prints output in bold print

lp -ohalf output  Divides the paper into two halves for printing output

lp -oquarter output  Prints four pages of output per side of paper

lp -olandscape output   Prints output in landscape orientation

lp -oportrait output   Prints output in portrait orientation

NOTE: Options can be combined using lp

cancel request_id   Stops print jobs or removes them from the queue (request_ids 
                    are obtained using lpstat)

Example: cancel 5438  Stops the print job with the id 5438 whether it is printing or 
                      if it is sitting in the queue

cancel -a printer   Removes all print requests from the current user on the 
                    specified printer

Example: cancel -a bobsprt  Removes all the requests from the current user to the 
                            printer named bobsprt

cancel -u login_id   Removes any print requests queued belonging to the user

Example: cancel -u bob  Cancels all queued print requests for user bob

ps  Shows certain information about active processes associated with the 
    current terminal.  Shows a listing of process IDs, terminal identifier, 
    cumulative execution time, and command name

ps -e   Shows information about all processes.  Shows a listing of process 
        IDs, terminal identifiers, cumulative execution time, and command 
        names for all processes

ps -f   Shows a full listing of information about the processes listed.  Shows 
        UID (user or owner of the process), PID (process ID--use this number 
        to kill it), PPID (process ID of the parent source), C (processor 
        utilization for scheduling), STIME (start time of the process), TTY 
        (controlling terminal for the process), TIME (cumulative time the 
        process has run), and COMMAND (the command that started the process)

ps -u user_id   Shows all processes that are owned by the person with the 
                pertinent user_id

Example: ps -u bob   Shows all the processes that belong to the person with the 
                     userid bob

ps -ef   Shows all processes in a full listing.  Shows all current processes 
         in full listing

ps -ugx   Shows all active and orphaned processes that belong to the user

kill process_id   Stops the process with the said id

Example: kill 6969 Kills the process with PID 6969

kill -9 process_id   Destroys the process with the said id

Example: kill -9 6969   PID # 6969 is killed regardless of circumstances.

grep string file  Searches input file(s) for specified string and prints the 
                  line with matches

Example: grep mike letter   Searches for the string mike in the file named letter 
                            and prints any line with mike in it to the screen

grep -c string file  Searches and prints only the number of matches to the screen

Example: grep -c hayes bankletter  Searches the file bankletter for the string
                                   hayes and prints the number of matches to the 
                                   screen

grep -i string file   Searches without regard to letter case

Example: grep -i hi file1   Searches file1 for hi, Hi, hI, and HI and prints all 
                            matches to the screen

grep -n string file   Prints to the screen preceded by the line number

Example: grep -n abc alpha   Searches alpha for abc and prints the matches' lines 
                             and line numbers to the screen

grep -v string file   All lines that do not match are printed

Example: grep -v lead pencils   Prints all lines in pencils that do not contain the 
                                string lead

grep -x string file   Only exact matches are printed

Example: grep -x time meetings   Prints only lines in meetings that match time 
                                 exactly

NOTE: grep is also useful when you use it in a | "pipe"

ps -ef | grep bob  Finds all processes in full listing and then prints only 
                   the ones that match the string bob to the screen

NOTE: You can also redirect grep's output to a file.

grep -i jan b_days>mymonth   Searches the file b_days for case-insensitive matches 
                             to jan and places the matching lines into a file called 
                             mymonth

vuepad filename   Opens filename for editing/viewing in the vuepad editor

vi filename   Text editor that exists on every UNIX system in the world

emacs filename   Another text editor

compress filename  Compresses the file to save disk space.

uncompress filename   Expands a compressed file

awk  UNIX programming language

eval `resize`  Tells the target computer that you've resized the window during 
               a telnet session

chexp # filename   Keeps the file(s) from expiring (being erased) on the target 
                   computer for # days

Example: chexp 365 nr*   Keeps the target computer from deleting all files  
                         starting with nr for 1 year (365 days)

Example: chexp 4095 nr*   Makes all files whose name starts with nr never expire  
                          or be deleted (infinite)

qstat  Displays the status of a process that has been submitted the Network Queuing 
       System (basically a batch job).  Shows the status of the requests submitted 
       by the invoker of the command÷this will print request-name, request-id, the 
       owner, relative request priority, and request state (is it running yet?)

qstat -a  Shows all requests

qstat -l  Shows requests in long format

qstat -m  Shows requests in medium-length format

qstat -u bob   Shows only requests belonging to the user bob

qstat -x  Queue header is shown in an extended format

xterm   Opens a new window (x-terminal) for you to work

xterm -option   -option sets the option

xterm +option   +option resets the option to default

Example: xterm   This opens another window like the one you are currently 
                 working in.

NOTE: Using xterm will eliminate a lot of desktop clutter.

xterm -help   Displays the xterm options.  Shows the options available

xterm -e program   Executes the listed program in the new xterm window.  When 
                   the program is finished, the new xterm window goes away.

Example: xterm -e myprog.exe   This opens an xterm window and executes the 
                               program myprog.exe from that window so that you 
                               may still work in your present window.

xterm -sb   Opens an xterm that saves a set number of lines when they go off 
            the top of the page and makes them accessible with a scroll bar.
            Puts a scroll bar on the right side of the page for reviewing 
            past lines in the window

NOTE: When clicking in the scroll bar, the left button scrolls down, the 
      right scrolls up, and the middle snaps the scroll bar to the mouse 
      position for dragging up and down.

xterm -sl number  Specifies the number of lines to be saved once they go off 
                  the top of the screen (default is 64)

xterm -sl 1000   The xterm will save 1,000 lines of work once it has moved 
                 off the immediate viewing area; it can be accessed using the 
                 scroll bar.

xterm -geom xxy+px+py   This option allows you to specify the size x pixels by 
                        y pixels and placement position x by position y of the 
                        new window when it opens.  Position +0+0 is the top 
                        left-hand corner of the screen, and the bottom right 
                        is approx. +1200+1000 depending on your resolution.

Note: The size of the window takes precedence over position, so if you position 
      it too close to the side of the screen, it will position at the edge with 
      the correct size.

Example: xterm -geom 80x80+0+50   Open a window 80 pixels wide by 80 pixels tall
                                  and positions its top left-hand corner at 0 
                                  pixels to the right of the left edge and 50 
                                  pixels down from the top of the screen.

Example: xterm -geom 10x35+300+500   Opens a window 10 pixs wide by 35 pixs tall 
                                     and positions its top left-hand corner 300 
                                     pixs from the left edge and 500 pixs down 
                                     from the top.

Example: xterm -geom 5x5+0+0   Opens a 5 by 5 window and positions its top left-
                               hand corner at the top left-hand corner of the 
                               screen.  xterm will not compromise size when 
                               positioning.

xterm -title label   Allows you to label your window's top title bar

Example: xterm -title SCRIPTS   Opens an xterm window with the title SCRIPTS 
                                (default is whatever follows the -e option)

xterm -(areas) color   Allows you to modify different colors in your xterm window

Example: xterm -bg white    Sets the background color to white.

Example: xterm -bd huntergreen   Sets the window border color to huntergreen.

Example: xterm -fg red   Sets the text color to red.

xterm -fn font   Sets the font in the new xterm window

Example: xterm -fn courr18   Sets the font to courr18 (default is fixed)

xterm -iconic  Starts the new xterm as an icon (double-click to maximize)

xterm -iconic -title xyz   Opens an xterm in iconic form with the title xyz

NOTE: Options can be combined using xterm