UnixTutorial

advertisement
TUTORIAL OF
UNIX COMMAND & SHELL SCRIPTS
5027
Professor: Dr. Shu-Ching Chen
TA: Samira Pouyanfar
Spring 2015
OUTLINE
Log in
 Unix Basic Commands
 Shell script

2
OUTLINE
Log in
 Unix Basic Commands
 Shell script

3
HOW TO LOG IN

Download putty from
http://www.chiark.greenend.org.uk/~sgtatham/putty/
download.html
4
CONNECT TO THE SERVER

The host is margay.cs.fiu.edu
1
2
3
4
5
LOG IN / ACCOUNT INFORMATION
Account information
 Login as : Your FIU username
 Password : Your first initial + PantherID + Your last initial

For exmaple, Steven Jackson with PID 1234567
should have password s1234567j
6
LOG IN
IN
MAC SYSTEMS
Use the existing ssh tool in your mac called "Terminal" by following
the steps:
 - Search for "Terminal" from spotlight, e.g., located on the upper
right corner of your screen
 - Open Terminal
 - Connect to the server margay.cs.fiu.edu using following
commands
ssh hha001@margay.cs.fiu.edu
replace hha001 with your fiu account


- Type your password
- Now, you are connected.
7
LOG IN
IN
MAC SYSTEMS
8
OUTLINE
Log in
 Unix Basic Commands
 Shell script

9
COMMANDS ABOUT FILES (1)

ls : list the contents of your current directory.
Format
 Options

ls [option] [directory][file]
-a : list all the files include the hidden ones
 -l : list not only the files name but also the related info
 -t : list the contents by modified date

10
COMMANDS ABOUT FILES (2)

File permission
Field1 : A set of ten permission flags
 Field2 : link count
 Field3 : owner of the file
 Field4 : associated group of the file
 Field5 : size
 Field 6-8 : Last modification date
 Field9 : file name

11
COMMANDS ABOUT FILES (3)

chmod : change the permission flags of the files

Format

Example
chmod [option] [types][+/-][types of permission] filename
chmod g+w myfile
 chmod g-rw myfile
 chmod u=rw go= myfile
 chmod –R g+rw myfile

12
COMMANDS ABOUT FILES (4)
pwd : print out the current working directory
 cd : change directory

cd .
cd
cd ..
 C
 Cd
cd

(.) means the current directory
(..) means the parent of current directory
cd with no argument will return you to your
home directory
13
COMMANDS ABOUT FILES (5)

cp : copy files
Format
 Options

cp [option] File1 File2
-i : It can be used to avoid overwriting the original file
 -r : Copy the folder and all the files and subfolders under it.


mv : move a file from one place to another or
rename a file.

Format mv File1 File2
14
COMMANDS ABOUT FILES (6)

mkdir : making directory


Format
mkdir Directory_name
rm : remove files or directories
Format rm [option] file1 file2 file3…
 Option

-i : ask before actually delete
 -r : delete the folders and all the files and subfolders under it

15
COMMANDS ABOUT FILES (7)

test : A command in Unix that evaluates conditional expressions.
[ expression ]
Format test expression or
 The functions will return true if the object exist or the
condition specified is true.
 File functions

-d Filename : Filename is a directory
 -s Filename : Filename has a size greater than 0
 -f Filename : Filename is a regular file

16
COMMANDS ABOUT FILE’S CONTENTS (1)

cat : display the contents of a file on the screen


cat file1
head : display the first ten lines of a file to the screen


Format
Format
head –n file1
tail : display the last ten lines of a file to the screen

Format
tail –n file1
17
18
COMMANDS ABOUT FILE’S CONTENTS (2)

wc : word count
Format
 Options

wc [options] file
-w : find out how many words the file has
 -l : find out how many lines the file has

19
COMMANDS ABOUT FILE’S CONTENTS (3)

grep : It searches files for the specified words or
patterns.
Format: grep [options] [pattern] file
 Options:

-c : Display the number of columns which satisfied the pattern.
 -i : Ignore case distinctions in both the PATTERN
and the input files.
 -v : Invert the sense of matching, to select non-matching lines.

20
Pipe : It cause the execution of multiple
processes from one single line
A|B|C
21
COMMANDS ABOUT FILE’S CONTENTS (4)

Redirection
> and >> can be used on the output of most
commands to direct their output to a file.
 Examples

22
COMMANDS ABOUT TEXT PROCESSING (1)

sort : sort lines of a text file or files
Default : sort without any option will sort the file
alphabetically
 Format
sort [option] file


uniq : remove duplicate adjacent lines from
sorted file.
23
24
COMMANDS ABOUT TEXT PROCESSING (2)

sed: One ultimate stream editor
Detail Tutorial :
http://www.grymoire.com/Unix/Sed.html
 Important function -> Substitution
sed 's/term1/term2/g‘ filename
 Format :

25
COMMANDS ABOUT TEXT PROCESSING (3)

cut : extract sections from each line of a file.
Format
 Option

cut [options] [range] filename
-c : character
 -f : field
 -d “:” : delimiter (default is a tab)


Range
N-M
 N -M

26
27
OUTLINE
Log in
 Unix Basic Commands
 Shell script

28
SHELL SCRIPT INTRO (1)

Scripts are collections of commands that are stored
in a file.
Detail Tutorial http://www.freeos.com/guides/lsst/
 Basic Vi commands






vim filename
i : switch to the editing(insert) mode
Esc +:q! Leave the vim program without saving the file
Esc +:w Save the file
Esc +:wq Save the file and leave the vim program
29
SHELL SCRIPT INTRO (2)


First shell script
Note that to make a file executable, you must set
the eXecutable bit, and for a shell script, the
Readable bit must also be set.
30
SHELL SCRIPT INTRO (3)

Variable
31
SHELL SCRIPT INTRO (4)

IF LOOP
32
SHELL SCRIPT INTRO (5)

For Loop
33
SHELL SCRIPT INTRO (6)

Useful concept
$( commands)
34
Download