Some Basic UNIX Commands

by Donald Hyatt

The UNIX operating system has for many years formed the backbone of the Internet, especially for large servers and most major university campuses. However, a free version of UNIX called Linux has been making significant gains against Macintosh and the Microsoft Windows 95/98/NT environments, so often associated with personal computers. Developed by a number of volunteers on the Internet such as the Linux group and the GNU project, much of the open-source software is copyrighted, but available for free. This is especially valuable for those in educational environments where budgets are often limited.

UNIX commands can often be grouped together to make even more powerful commands with capabilities known as I/O redirection ( < for getting input from a file input and > for outputing to a file ) and piping using | to feed the output of one command as input to the next. Please investigate manuals in the lab for more examples than the few offered here.

The following charts offer a summary of some simple UNIX commands. These are certainly not all of the commands available in this robust operating system, but these will help you get started.


These are ten commands that you really need to know in order to get started with UNIX. They are probably similar to commands you already know for another operating system.

Command Example Description
1.     ls ls
ls -alF
Lists files in current directory
List in long format
2.     cd cd tempdir
cd ..
cd ~dhyatt/web-docs
Change directory to tempdir
Move back one directory
Move into dhyatt's web-docs directory
3.     mkdir mkdir graphics Make a directory called graphics
4.     rmdir rmdir emptydir Remove directory (must be empty)
5.     cp cp file1 web-docs
cp file1 file1.bak
Copy file into directory
Make backup of file1
6.     rm rm file1.bak
rm *.tmp
Remove or delete file
Remove all file
7.     mv mv old.html new.html Move or rename files
8.     more more index.html Look at file, one page at a time
9.     lpr lpr index.html Send file to printer
10.   man man ls Online manual (help) about command


Once you have mastered the basic UNIX commands, these will be quite valuable in managing your own account.

Command Example Description
1.     grep <str><files> grep "bad word" * Find which files contain a certain word
2.     chmod <opt> <file> chmod 644 *.html
chmod 755 file.exe
Change file permissions read only
Change file permissions to executable
3.     passwd passwd Change passwd
4.     ps <opt> ps aux
ps aux   |   grep dhyatt
List all running processes by #ID
List process #ID's running by dhyatt
5.     kill <opt> <ID> kill -9 8453 Kill process with ID #8453
6.     gcc (g++) <source> gcc file.c -o file
g++ fil2.cpp -o fil2
Compile a program written in C
Compile a program written in C++
7.     gzip <file> gzip bigfile
gunzip bigfile.gz
Compress file
Uncompress file
8.     mail
mail < file1
Send file1 by email to someone
Read mail using pine
9.     telnet <host>
        ssh <host>
ssh -l dhyatt
Open a connection to vortex
Open a secure connection to jazz as user dhyatt
10.   ftp <host>
ncftp <host/directory>
Upload or Download files to station1
Connect to archives at UNC

Ten FUN UNIX Commands

These are ten commands that you might find interesting or amusing. They are actually quite helpful at times, and should not be considered idle entertainment.

Command Example Description
1.     who who Lists who is logged on your machine
2.     finger finger Lists who is on computers in the lab
3.     ytalk <user@place> ytalk dhyatt@threat Talk online with dhyatt who is on threat
4.     history history Lists commands you've done recently
5.     fortune fortune Print random humerous message
6.     date date Print out current date
7.     cal <mo> <yr> cal 9 2000 Print calendar for September 2000
8.     xeyes xeyes & Keep track of cursor (in "background")
9.     xcalc xcalc & Calculator ("background" process)
10.   mpage <opt> <file> mpage -8 file1   |  lpr Print 8 pages on a single sheet and send to printer (the font will be small!)


These ten commands are very helpful, especially with graphics and word processing type applications.

Command Example Description
1.     netscape netscape & Run Netscape browser
2.     xv xv & Run graphics file converter
3.     xfig / xpaint xfig & (xpaint &) Run drawing program
4.     gimp gimp & Run photoshop type program
5.     ispell <fname> ispell file1 Spell check file1
6.     latex <fname> latex file.tex Run LaTeX, a scientific document tool
7.     xemacs / pico xemacs (or pico) Different editors
8.     soffice soffice & Run StarOffice, a full word processor
9.     m-tools (mdir, mcopy,
        mdel, mformat, etc. )
mdir a:
mcopy file1   a:
DOS commands from UNIX (dir A:)
Copy file1 to A:
10.   gnuplot gnuplot Plot data graphically

Ten USEFUL UNIX Commands:

These ten commands are useful for monitoring system access, or simplifying your own environment.

Command Example Description
1.     df df See how much free disk space
2.     du du -b subdir Estimate disk usage of directory in Bytes
3.     alias alias lls="ls -alF" Create new command "lls" for long format of ls
4.     xhost xhost +
xhost -
Permit window to display from x-window program from threat
Allow no x-window access from other systems
5.     fold fold -s file1   |   lpr Fold or break long lines at 60 characters and send to printer
6.     tar tar -cf subdir.tar subdir
tar -xvf subdir.tar
Create an archive called subdir.tar of a directory
Extract files from an archive file
7.     ghostview (gv) gv View a Postscript file
8.     ping
See if machine is alive
Print data path to a machine
9.     top top Print system usage and top resource hogs
10.   logout (exit) logout or exit How to quit a UNIX shell.

Some Other Useful Pages