confidential to trianz inc. 1. 2 introduction to unix and its architecture learn to use basic unix...

Post on 04-Jan-2016

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

typeowner

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/visapplpathseg=/home/oracle/bintoday=`date`

export – to export the variable to the environment

•15

Confidential to Trianz Inc.

Redirection operators:Output redirection : >, |, >>

Input redirection : <

Example: cat test1 test2 > test3cat test2 >> test1ls –l | grep newsort < 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/bashecho “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-listdone

Example:for X in red green bluedo

echo $Xdone

•23

Confidential to Trianz Inc.

While Loopswhile command-list1

do command-list2done

Example:x=0while [ $x -le 20 ]do

echo $xx=`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

Confidential to Trianz Inc.

sqlplus -s <userid>/<passwd>@<dbsid> @<filepath>/<filename>

Example 1: sqlplus -s $UID/$PWD@$CONSTR@$EXECDIR/sql/oa_com_monitor_cmrun

Example 2 :st_date=`sqlplus -s $UID/$PWD@$CONSTR << EOFset head offset feedback offselect to_char(sysdate-15,'DD-MON-YYYY') from dual;EOF`

•26

Confidential to Trianz Inc.

The shell script can have either of the 2 extensions..prog or .sh

.prog :1. Create a soft link to the shell without extension to

$FND_TOP/bin/fndcpesrEx: ln -s $FND_TOP/bin/fndcpesr $FND_TOP/bin/TEST

2. Grant execute permission to the both the files (.prog and the file without extension)Ex: chmod +x TEST.prog TEST

.sh :No need to create a soft link.

•27

Confidential to Trianz Inc. •28

Differences b/w .prog and .sh

.prog: will get the following parameters as default to the shell.

$1 - Connection string (userid/passwd@dbsid)

$2 - Fnd user id

$3 - Fnd user

$4 - Request id

.sh : will only get one parameter which as all the above along with some additional ones.

Ex: FCP_REQID=250898 FCP_LOGIN="APPS/APPS" FCP_USERID=1117 FCP_USERNAME="SRVCMGR" FCP_PRINTER="noprint" FCP_SAVE_OUT=Y FCP_NUM_COPIES=0

Confidential to Trianz Inc.

QUESTIONS ??

•29

top related