Tải bản đầy đủ (.ppt) (29 trang)

Introduction to UNIX and shell cripting

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (920.15 KB, 29 trang )

Confidential to Trianz Inc.

1
Confidential to Trianz Inc.

2

Introduction to Unix and its architecture

Learn to use basic Unix commands

Learn to use vi editor

Learn to write shell scripts

Learn to register and run shell scripts from oracle applications
Confidential to Trianz Inc.
What is UNIX ?
UNIX is an operating system co-created by AT&T Bell
Labs researchers Dennis Ritchie and Ken Thompson
in the late 1960s.
Unix is a multitasking, multiuser, programming
environment.

3
Confidential to Trianz Inc.

4
Confidential to Trianz Inc.
Kernel – is the single large program which resides in
the memory which is the operating system. It


manages File system, Memory, I/O and Processes.
Shell – is a command interpreter which provides the
user interface for the UNIX operating system.

5
Confidential to Trianz Inc.

HP-UX - HP UNIX developed by HP

SunOS and Solaris – Developed by Sun
Microsystems

AIX – Developed by IBM

SCO Unix – Developed by SCO

Linux - Free Source code

BSD – Berkley Software Design

6
Confidential to Trianz Inc.

Bourne shell (sh)

C shell (csh)

TC shell (tcsh)

Korn shell (ksh)


Bourne Again SHell (bash)

7
Confidential to Trianz Inc.
Bourne C TC Korn BASH
Command history No Yes Yes Yes Yes
Command alias No Yes Yes Yes Yes
Shell scripts Yes Yes Yes Yes Yes
Filename completion No Yes* Yes Yes* Yes
Command line editing No No Yes Yes* Yes
Job control No Yes Yes Yes Yes

8
* not the default setting for this shell
Confidential to Trianz Inc.
There are three types of file access supported by
UNIX.

r – read, view the contents of a file or a directory

w – write, edit file/directory contents

x – execute, run executable file

9
Confidential to Trianz Inc.

10
- rwx r-x r 1 user1 oracle 858 Feb 22 22:28 file1.txt

type
owner
group
size
Modification
date/time
File name
User
permissions
Group
permissions
Other
Permissions
links
For example:
Suppose you type in ls -l and the result is
Confidential to Trianz Inc.
ls - List directory contents
cd - Change the current directory
cp - Copy files and directories
mv - Move (rename) files
mkdir - Make a directory
rm - Remove files or directories (Use with Caution)
rmdir – Delete a directory (Use with Caution)
echo – Display a line of text

11
Confidential to Trianz Inc.
cat – Concatenate files and print on the std output
date – Print the system date and time

head – Output the first part of files
tail – Output the last part of files
pwd – Print name of current/Working Directory
man – Format and display the on-line manual pages
who – Show who is logged on
chmod - Change file access permissions

12
Confidential to Trianz Inc.
grep – Print lines matching a pattern
find – Search for files in a directory hierarchy
diff – Find differences between two files
ps - Report process status
cut – Remove sections from each line of files
su – run a shell with substitute user and group IDs
wc - Print the number of bytes, words, and lines in files
ln - Make links between files

13
Confidential to Trianz Inc.
alias/unalias - Shorthand for a command or commands
sort - Sort lines of text files
exit – Exit the current shell with status
shift – Shift positional parameters
env – Display the environment variables
logout - Exit a login shell

14
Confidential to Trianz Inc.
There are 2 types of variables in Unix.


Environment variables

Shell variables
As per conventions environment variables will be in
uppercase and Shell variables will be in lowercase.
Example :
APPL_TOP=/srv/115102/inst/visappl
pathseg=/home/oracle/bin
today=`date`
export – to export the variable to the environment

15
Confidential to Trianz Inc.
Redirection operators:
Output redirection : >, |, >>
Input redirection : <
Example:
cat test1 test2 > test3
cat test2 >> test1
ls –l | grep new
sort < test.txt > sortedtest.txt

16
Confidential to Trianz Inc.
vi – Visual text editor
vi <file_name> - to open the any text file in vi editor.
Two modes of vi

Command mode – Esc key


Insert mode – a or i


17
Confidential to Trianz Inc.
a - enter append mode
i - enter insert mode
h - move cursor left
j - move cursor down
k - move cursor up
l - move cursor right
x - delete char under cursor
r - replace one character under the cursor
u - undo the last change to the file

18
Confidential to Trianz Inc.
^ - Goto the beginning of the line
$ - Goto the end of the line
[n]dd - delete line/lines from the cursor position
[n]yy - yank (copy) line/lines from the cursor position
p - paste the yanked line/lines below the cursor position
ctrl-f - Scroll forwards one page
ctrl-b - Scroll backwards one page
:w - Save the file
:q - quit vi

19
Confidential to Trianz Inc.

Conventionally, a shell script should start with a line:
#!/bin/ksh
Example shell script
#!/bin/bash
echo “Hello $USER”
echo “Today is “ `date`
echo “You are in directory $PWD”
exit 0

20
Confidential to Trianz Inc.
Ex: ls –lrt, myshell.sh oracle
$1 to $9 – will give the arguments 1 to 9. To get
remaining we need to use shift command.
$@ - will give the complete list of all the arguments to
that shell.

21
Confidential to Trianz Inc.
Conditionals, if/then/elif
if list
then
list
[elif list then list]
[else list]
fi
Example:
if [ $x -lt $y ] # is $x less than $y ?
then
echo “$y is greater than $x”

fi

22
Confidential to Trianz Inc.
For loops
for name in w1 w2
do command-list
done
Example:
for X in red green blue
do
echo $X
done

23
Confidential to Trianz Inc.
While Loops
while command-list1
do command-list2
done
Example:
x=0
while [ $x -le 20 ]
do
echo $x
x=`expr $x + 1`
done

24
Confidential to Trianz Inc.

$? - returns 0 if the last command is executed
successfully,
else non zero.
$# - returns the number of arguments.
$! - returns the last command PID run in bg (using &)
$$ - returns the current shell PID

25

×