Post on 18-Jan-2016
Introduction to UNIX
2
Unix File System
Stores Files Text, Programs, Images, etc.
Made up of Many Files User, Unix System, Unix Commands
3
Unix File System
usr var
file1, file2,file3, file4
jan
file1, file2,file3, file4
feb
data m box, letter,prog1, prog2
rdefe jsm ith
x1, x2, x3, x4
save m box, jandatinfo
djones
hom e etc lib
root
Home Directory Directory
containing all home directories
Top most directory in Unix
4
Unix File System
Home Directory Personal Directory to store files Usually the Directory Name = login ID Current Directory after successful login
usr var
file1, file2,file3, file4
jan
file1, file2,file3, file4
feb
data m box, letter,prog1, prog2
rdefe jsm ith
x1, x2, x3, x4
save m box, jandatinfo
djones
hom e etc lib
root
Home directories for: rdefe, jsmith and djones
5
Unix File System
What Can You Do? Create New Files & Directories Organize Files Locate Files Based on a Directory
Structure Change to a New Directory
6
Unix File System
File & Directory Naming Guidelines Don’t Use Meta Characters
/ \ “ ` * ; ? { } ( ) [ ] ~ ! $ < > | & # Do Use
a-z A-Z0-9. _ -
Remember Unix is Case Sensitive!
7
Unix File System
File & Directory Name Examples feb1998, 178987, my_data,
my.data.new mbox, Mbox, mboX, MBOX, mBox prog1..2 .profile
8
Unix Commands
ls List Files & Directories
$ ls198Aaa.bb.cc.ddbindatefileetcmailmboxmbox.oldunix$
$ ls198Aaa.bb.cc.ddbindatefileetcmailmboxmbox.oldunix$
9
Unix Commands
ls -p -p Show Directories
$ ls -p198Aaa.bb.cc.ddbin/datefileetc/mail/mboxmbox.oldunix/$
$ ls -p198Aaa.bb.cc.ddbin/datefileetc/mail/mboxmbox.oldunix/$
10
Unix Commands
ls [directory1] [directory2] ... List the contents of a directory
$ ls unixawk.dataawk.prgbgraphcpyhomework2homework3unix2test$
$ ls unixawk.dataawk.prgbgraphcpyhomework2homework3unix2test$
$ ls -p198Aaa.bb.cc.ddbin/datefileetc/mail/mboxmbox.oldunix/$
$ ls -p198Aaa.bb.cc.ddbin/datefileetc/mail/mboxmbox.oldunix/$
11
Unix Commands
ls -s -s Show File Size in Blocks Block Sizes
512 bytes1024 bytes2048 bytes
$ ls -stotal 19 1 198 1 A 1 aa.bb.cc.dd 1 bin 1 datefile 1 etc 1 mail 2 mbox 1 unix
$ ls -stotal 19 1 198 1 A 1 aa.bb.cc.dd 1 bin 1 datefile 1 etc 1 mail 2 mbox 1 unix
12
Unix Commands
ls -l -l Long Listing
$ ls -ltotal 19-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 Adrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bindrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 32 Sep 2 1992 mail-rw------- 1 rdefe unix 984 Sep 12 21:44 mboxdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unix$
$ ls -ltotal 19-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 Adrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bindrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 32 Sep 2 1992 mail-rw------- 1 rdefe unix 984 Sep 12 21:44 mboxdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unix$
13
Unix Commands
ls -a -a List All Files $ ls -a
.
..
.profile
.sh_history198Abindatefiledbetcmboxunix$
$ ls -a....profile.sh_history198Abindatefiledbetcmboxunix$
Include Files That Begin with a ‘.’
Files that begin with a ‘.’ are usually configuration files
14
Unix Commands
ls -r -r Reverse Sort
ls -R -R List Contents
of Subdirectories
$ ls -runixmboxmailetcdbdatefilebinA198$
$ ls -runixmboxmailetcdbdatefilebinA198$
• List files in each subdirectory.
• Subdirectories with Subdirectories
will also be listed…and so on...
15
Unix Commands
ls -l -t or ls -lt -t Sort On Modification Time
$ ls -lttotal 19-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 A-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw------- 1 rdefe unix 984 Sep 12 21:44 mboxdrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bindrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unixdrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 32 Sep 2 1992 mail$
$ ls -lttotal 19-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 A-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw------- 1 rdefe unix 984 Sep 12 21:44 mboxdrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bindrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unixdrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 32 Sep 2 1992 mail$
16
Unix Commands
ls -l -t -r or ls -ltr -tr Reverse Sort On Modification Time
$ ls -ltrtotal 19drwxr-xr-x 2 rdefe unix 32 Sep 2 1992 maildrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unixdrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bin-rw------- 1 rdefe unix 984 Sep 12 21:44 mbox-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 A$
$ ls -ltrtotal 19drwxr-xr-x 2 rdefe unix 32 Sep 2 1992 maildrwxr-xr-x 3 rdefe unix 80 Aug 29 20:54 dbdrwxr-xr-x 2 rdefe unix 144 Aug 29 20:54 unixdrwxr-xr-x 2 rdefe unix 64 Aug 29 20:54 etcdrwxr-xr-x 2 rdefe unix 96 Sep 4 20:58 bin-rw------- 1 rdefe unix 984 Sep 12 21:44 mbox-rw-r--r-- 1 rdefe unix 53 Sep 12 21:46 198-rw-r--r-- 1 rdefe unix 62 Sep 12 21:47 A$
17
Unix Commands
ls -[ltrRa] [Filename1] [Filename2] … UnixCommand Options Arguments
$ ls -lt unix$
$ ls -lt unix$
18
Unix Commands
cat [Filename1] [Filename2] … Concatenate Files Display Files to the Screen Ctrl-s Pause Screen Ctrl-q Unpause Screen
$ cat sample.fileThis is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.$
$ cat sample.fileThis is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.$
19
Unix Commands
more [Filename1] [Filename2] … Display Files to the screen one page at a
time$ more largefileThis is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.--More--(16%)
$ more largefileThis is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.--More--(16%)
Spacebar (next page) b (previous page) Enter Key (next line)
q (Quit & return to unix) /string (search for
string) :n (next file) :p (previous file)
20
Unix Commands
pr [Filename1] [Filename2] … Format & Display Files to the Screen
$ pr sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.$
$ pr sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how the pr command is used.The pr command is useful in formattingvarious types of text files.$
21
Unix Commands
pr -[dn] [Filename1] [Filename2] … -d Double Space Output -n Number Lines
$ pr -d sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how
the pr command is used.
The pr command is useful in formatting
various types of text files.$
$ pr -d sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how
the pr command is used.
The pr command is useful in formatting
various types of text files.$
$ pr -n sample.file
98-05-22 23:07 sample.file Page 1
1 This is a sample file that i'll use to demo how the 2 pr command is used. 3 The pr command is useful in formatting 4 various types of text files.$
$ pr -n sample.file
98-05-22 23:07 sample.file Page 1
1 This is a sample file that i'll use to demo how the 2 pr command is used. 3 The pr command is useful in formatting 4 various types of text files.$
22
Unix Commands
lpr [Filename1] [Filename2] … Send Files to a Unix Printer No Formatting (page numbers, etc.)
$ lpr prog1 mbox$
$ lpr prog1 mbox$
$ pr sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how the pr command is used.
...
$ pr sample.file
98-05-22 23:07 sample.file Page 1
This is a sample file that i'll use to demo how the pr command is used.
...
Ideal solution would be to combine the lpr & pr to achieve formatted printed output
23
Unix Redirection
Output Normally Displayed to the Screen is Redirected and Becomes the Input to Another Command
$ pr prog1 | lpr$
$ pr prog1 | lpr$
24
Unix Redirection
The Output of One Command can be used as the Input to Another
Command | Command
Command that generates screen output
Command that requires input
$ pr prog1 | lpr$
$ pr prog1 | lpr$
25
Unix Redirection
Command | Command | Command ...
$ ls | pr | lpr$
$ ls | pr | lpr$
Directory Listing Formatted Using pr, Printed on Paper
26
Unix Redirection
Output Normally Displayed to the Screen Can Be Redirected to a File
$ pr prog1 > prog1.pr$
$ pr prog1 > prog1.pr$
The file prog1.pr contains the output of the pr command
Note: Nothing is displayed to the screen
27
Unix Redirection
Redirecting Output The Output of Command can be saved
to a File
Command > File
Command that generates screen output
File used to capture (save) screen output
$ pr prog1 > prog1.pr$
$ pr prog1 > prog1.pr$
Caution: Output File will be erased if it already exists.
28
Unix Redirection
Redirecting Input A Command Requiring Input Can
Receive it’s Input From a File
$ mail rdefe < mesg$
$ mail rdefe < mesg$
29
Unix Redirection
Redirecting Input
Command < File
Command that requires input
File used to provide input (instead of typing it!)
$ mail rdefe < mesg$
$ mail rdefe < mesg$
30
Redirection Examples
$ pr data > data.pr$ lpr data.pr
$ pr data > data.pr$ lpr data.pr $ pr data | lpr$ pr data | lprIs the same as1
$ cal 3 1993 > year$ cal 3 1993 > year Using arguments with redirection2
$ ls -l data > stuff$ ls -l data > stuffUsing arguments & options with redirection3
31
Redirection Examples
$ pr data > lpr$ pr data > lpr4
$ cat text let > mesg$ cat text let > mesg5
$ pr f1 f2 > f1$ pr f1 f2 > f16Create the file f1 Erases f1 if it already exists
1
pr f1 and f2, redirect to f1
2
32
Unix Commands
rm [Filename1] [Filename2] … remove files
$ rm prog1 mbox$
$ rm prog1 mbox$
Caution Unix Assumes You Know What Your Doing Be Sure You Know What Your Deleting No Undelete!
$ rm *$
$ rm *$
$ rm p*$
$ rm p*$
* is a Meta Char that matches anything
33
Unix Commands
vi [Filename] Full Screen, Visual Editor Changes Displayed As They Are Made Edits A Copy of the File Changes Must Be Saved
$ vi mesg$ vi mesg
emacshttp://www.gnu.org/software/emacs/emacs.html
34
Unix Commands
Vi ModesCommand Mode
Start in command mode Every Key Performs an Editing Command
Insert Mode Perform Text Entry/Input
Command Mode Insert Mode
Insert Mode Command
ESC Key
35
Sample vi Edit Session
Start in Command Mode Press a key for Append After Cursor
Command Enter text (Input Mode) Press ESC key (Command Mode) Press :wq followed by Enter key to Save &
Exit
$ vi mesg$ vi mesg Welcome to UNIX
This is an example ofa text file in vi~~~
Welcome to UNIX
This is an example ofa text file in vi~~~
Wnewtextelcome to UNIX
This is an example ofa text file in vi~~:wq$
Wnewtextelcome to UNIX
This is an example ofa text file in vi~~:wq$
36
Cursor Positioning
Moving the Cursor in Command Mode
h
j
l
k
w Forward One Wordb Backward
One WordCntrl-d Scroll DownCntrl-u Scroll UpEnter Down One Line G Go To Last Line5G Go To Line 5
Key Command
37
Text Input Modevi Text Input Mode Commands
Wnewtextelcome to UNIX
This is an example ofa text file in vi~~
Wnewtextelcome to UNIX
This is an example ofa text file in vi~~
a Append After Cursor
Welcome to UNIXnewtext
This is an example ofa text file in vi~~
Welcome to UNIXnewtext
This is an example ofa text file in vi~~
A Append at End of Line
newtextWelcome to UNIX
This is an example ofa text file in vi~~
newtextWelcome to UNIX
This is an example ofa text file in vi~~
i Insert Before Cursor
newtextWelcome to UNIX
This is an example ofa text file in vi~~
newtextWelcome to UNIX
This is an example ofa text file in vi~~
I Insert at Beginning of Line
R Replace Text (typeover)
r Replace One Char
newtextWelcome to UNIX
This is an example ofa text file in vi~~
newtextWelcome to UNIX
This is an example ofa text file in vi~~
O Open New Line Above Cursor
o Open New Line Below Cursor
38
Deleting Text
Welcome to UNIX
This is an example ofa text file in vi~~
Welcome to UNIX
This is an example ofa text file in vi~~
x Delete One CharX Delete Char Before Cursor
dd Delete One LineThis is an example ofa text file in vi~~
This is an example ofa text file in vi~~
Proceed Any Command with a Number to multiply effect 4x Delete 4 chars 5dd Delete 5 lines 3dw Delete 3 words
39
Undo Changes
Welcome to UIX
This is an example ofa text file in vi~~
Welcome to UIX
This is an example ofa text file in vi~~
x Delete One Charu Undo Last Change
Welcome to UNIX
This is an example ofa text file in vi~~
Welcome to UNIX
This is an example ofa text file in vi~~
WELcome to UIX 123
This is an example ofa text file in vi~~
WELcome to UIX 123
This is an example ofa text file in vi~~
U Undo All Changes on Line
Welcome to UNIX
This is an example ofa text file in vi~~
Welcome to UNIX
This is an example ofa text file in vi~~
40
Saving Your Changes
Command Mode ZZ Save & Exit vi :wq Save & Exit vi :w data Save to a file data :q! Quit Without Saving Changes
Vi Reference http://www.eng.hawaii.edu/Tutor/vi.html
41
Other Goodies...
/string Forward Search for `string`?string Backward Search for `string`
n Repeat Search N Repeat Search in reverse direction
Ctrl-G Display Current Location in File J Join two lines together
http://www.thomer.com/thomer/vi/vi.html