Introduction to UNIX. 2 Unix File System zStores Files yText, Programs, Images, etc. zMade up of...

Preview:

Citation preview

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 Usea-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 Commandspr -[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

KeyKey CommandCommand

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 Cursoro 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 Char

X 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 Char

u 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

Recommended