The Most Common UNIX Commands
 
 
Navigating UNIX:
 
/    (refers to the root directory on the server)
./   (the current directory that you are in)
../  (parent directory of your current directory)
 
pwd (shows what you current directory is - giving the full path)
 
ls                    (lists all the files in your current directory)
ls -al                (lists filenames + information)
ls -alR               (lists filenames + information in all subdirectories)
ls -alR | more        (lists filenames + information in all subdirectories,
                          pausing when the screen become full)
ls -alR > result.txt  (lists filenames + information in all subdirectories,
                          and ouputs the results to a file instead of the screen)
ls *.html             (lists all files ending with .html)
ls -al /home/usr/bob/ (lists files + info for /home/usr/bob)
 
cd                    (changes you to a new directory)
cd images
cd /                  (changes you to the root directory)
cd /home/usr/images
cd ..                 (this goes back one directory)
 
 
Moving, Copying and Deleting Files:
 
mv [old name] [new name]      (move/rename a file)
 
cp [filename] [new filename]  (copy a file)
 
rm [filename]                 (delete a file)
rm *                          (delete all files in your current directory)
rm *.html                     (delete all files ending in .html
                                  in your current directory)
 
 
 
Creating, Moving, Copying and 
Deleting Directories:
 
mkdir [directoryname]           (creates a new directory)
 
ls -d */                        (lists all directories within current directory)
 
cp -r [directoryname] [new directoryname] (copy a directory and all 
                                          files/directories in it)
 
rmdir [directoryname]           (remove a directory if it is empty)
rm -r [directoryname]           (remove a directory and all files in it)
 
 
Searching Files and Directories
 
find / -name [filename] -print (search the whole server for a file)
find . -name [filename] -print (search for a file starting with
                                   the current directory)
find / -name [directoryname] - type d -print
                                  (search the whole server for a direcory)
 
grep [text] [filename]         (search for text within a file)
 
sed s/[oldtext]/[newtext]/g [filename]  (searches file and replaces all occurances
                                         of [oldtext] with [newtext]
 
 
File and Directory Permissions
 
There are three levels of file permission: read, write and execute.  In
addition, there are three groups to which you can assign permission,
The file owner, the user group, and everyone.  The command chmod followed
by three numbers is used to change permissons.  The first number is
the permission for the owner, the second for the group and the third
for everyone.  Here are how the levels of permission translate:
   
   0 = ---  (no permission)
   1 = --x  (execute only)
   2 = -w-  (write only)
   3 = -wx  (write and execute)
   4 = r--  (read only)
   5 = r-x  (read and execute)
   6 = rw-  (read and write)
   7 = rwx  (read, write and 
execute)
 

For maximum protection against external access to your files and directories, 
set GROUP and OTHERS to 0. This prevents others who may have access to the server
or your directory the server from browsing, running, copying, or overwriting your files.
Here are the most common file permissions used:

   chmod 700 [filename]    maximum protection from external access
   chmod 701 [filename]    minimal permission for www directories (descend, not read)
   chmod 704 [filename]    minimal permission for www html documents
   chmod 705 [filename]    minimal permission for reading (and descending) www directories
   chmod 750 [filename]    allows 'group' members read/execute access, but no others
NOTE: your 'group' is S... which is just about ALL STUDENTS! so be careful!