Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 43

Re: what is Normalization means..?

Answer Normalization is a series of steps followed to


obtain a
# 2 database design that allows for consistent
storage and
efficient acess of data in a relational
database.
These steps reduce data redundancy and risk of
data
becoming inconsistent.
there are 5 types of normal forms(NF) :

1 NF , 2NF, 3NF, 4NF, 5NF

1NF:- A relation is said to be in first normal


form , if it
dows not contain any repeating groups or
elements (or) if
all the values are atomic

2 NF:- A relation is said to be in Second


Normal form, if
and only if it is in 1 NF and all the non-key
attributes
are fully functionally dependent on the primary
key.

3 NF:- A relation is said to be in 3rd normal


form, if and
only if it is in 2NF and every non-key
attribute is
non-transitively dependent on the primary key.
(or) every attribute is independent of all the
other non-
key attributes.

BCNF:- A relation is said to be in BCNF, if


every attribute
on which some other attribute is also a
candidate for
primary key of a relation.

4 NF:- A relation is said to be in 4th normal


form, if and
only if it is in 3NF and it should not contain
any
multivalued dependencies.

5 NF :-A relation is said to be in 5 NF , if


and only it it
is in 4 NF and every join dependency in R is
implied by the
candidate key.
Unix Command Summary
See the Unix tutorial for a leisurely, self-paced introduction on how to use the commands listed below.
For more documentation on a command, consult a good book, or use the man pages. For example, for
more information on grep, use the command man grep.

Contents

 cat --- for creating and displaying short files


 chmod --- change permissions
 cd --- change directory
 cp --- for copying files
 date --- display date
 echo --- echo argument
 ftp --- connect to a remote machine to download or upload files
 grep --- search file
 head --- display first part of file
 ls --- see what files you have
 lpr --- standard print command (see also print )
 more --- use to read files
 mkdir --- create directory
 mv --- for moving and renaming files
 ncftp --- especially good for downloading files via anonymous ftp.
 print --- custom print command (see also lpr )
 pwd --- find out what directory you are in
 rm --- remove a file
 rmdir --- remove directory
 rsh --- remote shell
 setenv --- set an environment variable
 sort --- sort file
 tail --- display last part of file
 tar --- create an archive, add or extract files
 telnet --- log in to another machine
 wc --- count characters, words, lines

cat

This is one of the most flexible Unix commands. We can use to create, view and concatenate
files. For our first example we create a three-item English-Spanish dictionary in a file called
"dict."

% cat >dict
red rojo
green verde
blue azul
<control-D>
%

<control-D> stands for "hold the control key down, then tap 'd'". The symbol > tells the computer
that what is typed is to be put into the file dict. To view a file we use cat in a different way:

% cat dict
red rojo
green verde
blue azul
%
If we wish to add text to an existing file we do this:

% cat >>dict
white blanco
black negro
<control-D>
%

Now suppose that we have another file tmp that looks like this:

% cat tmp
cat gato
dog perro
%
Then we can join dict and tmp like this:

% cat dict tmp >dict2

We could check the number of lines in the new file like this:

% wc -l dict2
8

The command wc counts things --- the number of characters, words, and line in a file.

chmod

This command is used to change the permissions of a file or directory. For example to make a
file essay.001 readable by everyone, we do this:

% chmod a+r essay.001

To make a file, e.g., a shell script mycommand executable, we do this

% chmod +x mycommand
Now we can run mycommand as a command.
To check the permissions of a file, use ls -l . For more information on chmod, use man chmod.

cd

Use cd to change directory. Use pwd to see what directory you are in.

% cd english
% pwd
% /u/ma/jeremy/english
% ls
novel poems
% cd novel
% pwd
% /u/ma/jeremy/english/novel
% ls
ch1 ch2 ch3 journal scrapbook
% cd ..
% pwd
% /u/ma/jeremy/english
% cd poems
% cd
% /u/ma/jeremy

Jeremy began in his home directory, then went to his english subdirectory. He listed this
directory using ls , found that it contained two entries, both of which happen to be diretories. He
cd'd to the diretory novel, and found that he had gotten only as far as chapter 3 in his writing.
Then he used cd .. to jump back one level. If had wanted to jump back one level, then go to
poems he could have said cd ../poems. Finally he used cd with no argument to jump back to his
home directory.

cp
Use cp to copy files or directories.

% cp foo foo.2
This makes a copy of the file foo.

% cp ~/poems/jabber .

This copies the file jabber in the directory poems to the current directory. The symbol "." stands
for the current directory. The symbol "~" stands for the home directory.

date
Use this command to check the date and time.
% date
Fri Jan 6 08:52:42 MST 1995

echo

The echo command echoes its arguments. Here are some examples:

% echo this
this
% echo $EDITOR
/usr/local/bin/emacs
% echo $PRINTER
b129lab1

Things like PRINTER are so-called environment variables. This one stores the name of the default
printer --- the one that print jobs will go to unless you take some action to change things. The
dollar sign before an environment variable is needed to get the value in the variable. Try the
following to verify this:

% echo PRINTER
PRINTER

ftp

Use ftp to connect to a remote machine, then upload or download files. See also: ncftp

Example 1: We'll connect to the machine fubar.net, then change director to mystuff, then
download the file homework11:

% ftp solitude
Connected to fubar.net.
220 fubar.net FTP server (Version wu-2.4(11) Mon Apr 18 17:26:33 MDT
1994) ready.
Name (solitude:carlson): jeremy
331 Password required for jeremy.
Password:
230 User jeremy logged in.
ftp> cd mystuff
250 CWD command successful.
ftp> get homework11
ftp> quit

Example 2: We'll connect to the machine fubar.net, then change director to mystuff, then
upload the file collected-letters:

% ftp solitude
Connected to fubar.net.
220 fubar.net FTP server (Version wu-2.4(11) Mon Apr 18 17:26:33 MDT
1994) ready.
Name (solitude:carlson): jeremy
331 Password required for jeremy.
Password:
230 User jeremy logged in.
ftp> cd mystuff
250 CWD command successful.
ftp> put collected-letters
ftp> quit

The ftp program sends files in ascii (text) format unless you specify binary mode:

ftp> binary
ftp> put foo
ftp> ascii
ftp> get bar
The file foo was transferred in binary mode, the file bar was transferred in ascii mode.

grep

Use this command to search for information in a file or files. For example, suppose that we have
a file dict whose contents are

red rojo
green verde
blue azul
white blanco
black negro
Then we can look up items in our file like this;

% grep red dict


red rojo
% grep blanco dict
white blanco
% grep brown dict
%

Notice that no output was returned by grep brown. This is because "brown" is not in our
dictionary file.

Grep can also be combined with other commands. For example, if one had a file of phone
numbers named "ph", one entry per line, then the following command would give an alphabetical
list of all persons whose name contains the string "Fred".

% grep Fred ph | sort


Alpha, Fred: 333-6565
Beta, Freddie: 656-0099
Frederickson, Molly: 444-0981
Gamma, Fred-George: 111-7676
Zeta, Frederick: 431-0987
The symbol "|" is called "pipe." It pipes the output of the grep command into the input of the sort
command.

For more information on grep, consult

% man grep

head

Use this command to look at the head of a file. For example,

% head essay.001

displays the first 10 lines of the file essay.001 To see a specific number of lines, do this:

% head -n 20 essay.001
This displays the first 20 lines of the file.

ls

Use ls to see what files you have. Your files are kept in something called a directory.

% ls
foo letter2
foobar letter3
letter1 maple-assignment1
%

Note that you have six files. There are some useful variants of the ls command:

% ls l*
letter1 letter2 letter3
%

Note what happened: all the files whose name begins with "l" are listed. The asterisk (*) is the "
wildcard" character. It matches any string.

lpr

This is the standard Unix command for printing a file. It stands for the ancient "line printer." See

% man lpr
for information on how it works. See print for information on our local intelligent print
command.

mkdir
Use this command to create a directory.

% mkdir essays
To get "into" this directory, do

% cd essays
To see what files are in essays, do this:

% ls

There shouldn't be any files there yet, since you just made it. To create files, see cat or emacs.

more

More is a command used to read text files. For example, we could do this:

% more poems

The effect of this to let you read the file "poems ". It probably will not fit in one screen, so you
need to know how to "turn pages". Here are the basic commands:

 q --- quit more


 spacebar --- read next page
 return key --- read next line
 b --- go back one page

For still more information, use the command man more.

mv

Use this command to change the name of file and directories.

% mv foo foobar

The file that was named foo is now named foobar


ncftp

Use ncftp for anonymous ftp --- that means you don't have to have a password.

% ncftp ftp.fubar.net
Connected to ftp.fubar.net
> get jokes.txt

The file jokes.txt is downloaded from the machine ftp.fubar.net.

print
This is a moderately intelligent print command.

% print foo
% print notes.ps
% print manuscript.dvi

In each case print does the right thing, regardless of whether the file is a text file (like foo ), a
postcript file (like notes.ps, or a dvi file (like manuscript.dvi. In these examples the file is
printed on the default printer. To see what this is, do

% print
and read the message displayed. To print on a specific printer, do this:

% print foo jwb321


% print notes.ps jwb321
% print manuscript.dvi jwb321
To change the default printer, do this:

% setenv PRINTER jwb321

pwd
Use this command to find out what directory you are working in.

% pwd
/u/ma/jeremy
% cd homework
% pwd
/u/ma/jeremy/homework
% ls
assign-1 assign-2 assign-3
% cd
% pwd
/u/ma/jeremy
%

Jeremy began by working in his "home" directory. Then he cd 'd into his homework
subdirectory. Cd means " change directory". He used pwd to check to make sure he was in the
right place, then used ls to see if all his homework files were there. (They were). Then he cd'd
back to his home directory.

rm
Use rm to remove files from your directory.

% rm foo
remove foo? y
% rm letter*
remove letter1? y
remove letter2? y
remove letter3? n
%

The first command removed a single file. The second command was intended to remove all files
beginning with the string "letter." However, our user (Jeremy?) decided not to remove letter3.

rmdir

Use this command to remove a directory. For example, to remove a directory called "essays", do
this:

% rmdir essays

A directory must be empty before it can be removed. To empty a directory, use rm.

rsh

Use this command if you want to work on a computer different from the one you are currently
working on. One reason to do this is that the remote machine might be faster. For example, the
command

% rsh solitude

connects you to the machine solitude. This is one of our public workstations and is fairly fast.

See also: telnet

setenv
% echo $PRINTER
labprinter
% setenv PRINTER myprinter
% echo $PRINTER
myprinter

sort
Use this commmand to sort a file. For example, suppose we have a file dict with contents

red rojo
green verde
blue azul
white blanco
black negro
Then we can do this:

% sort dict
black negro
blue azul
green verde
red rojo
white blanco
Here the output of sort went to the screen. To store the output in file we do this:

% sort dict >dict.sorted


You can check the contents of the file dict.sorted using cat , more , or emacs .

tail

Use this command to look at the tail of a file. For example,

% tail essay.001

displays the last 10 lines of the file essay.001 To see a specific number of lines, do this:

% tail -n 20 essay.001
This displays the last 20 lines of the file.

tar

Use create compressed archives of directories and files, and also to extract directories and files
from an archive. Example:

% tar -tvzf foo.tar.gz

displays the file names in the compressed archive foo.tar.gz while

% tar -xvzf foo.tar.gz


extracts the files.

telnet

Use this command to log in to another machine from the machine you are currently working on.
For example, to log in to the machine "solitude", do this:

% telnet solitude

See also: rsh.

wc

Use this command to count the number of characters, words, and lines in a file. Suppose, for
example, that we have a file dict with contents

red rojo
green verde
blue azul
white blanco
black negro
Then we can do this

% wc dict
5 10 56 tmp

This shows that dict has 5 lines, 10 words, and 56 characters.

The word count command has several options, as illustrated below:

% wc -l dict
5 tmp
% wc -w dict
10 tmp
% wc -c dict
56 tmp

dummy
Under construction
Unix commands

Misc commands File management comparison and searching Text processing

Shell and other programming communications Storage commands System status

Misc commands
man,banner,cal, calendar,clear,nohup, tty .

Man ual command.


man man This is help command, and will explains you about online manual pages you can also
use man in conjunction with any command to learn more about that command for example.

 man ls will explain about the ls command and how you can use it.
 man -k pattern command will search for the pattern in given command.

Banner command.
banner prints characters in a sort of ascii art poster, for example to print wait in big letters. I will
type
banner wait at unix command line or in my script. This is how it will look.

# # ## # #####
# # # # # #
# # # # # #
# ## # ###### # #
## ## # # # #
# # # # # #

Cal command
cal command will print the calander on current month by default. If you want to print calander of
august of 1965. That's eightht month of 1965.
cal 8 1965 will print following results.

August 1965
S M Tu W Th F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

Clear command
clear command clears the screen and puts cursor at beginning of first line.

Calendar command
calendar command reads your calendar file and displays only lines with current day.
For example in your calendar file if you have this

12/20 Test new software.


1/15 Test newly developed 3270 product.
1/20 Install memory on HP 9000 machine.
On dec 20th the first line will be displayed. you can use this command with your crontab file or in your
login files.

Nohup command.
nohup command if added in front of any command will continue running the command or
process even if you shut down your terminal or close your session to machine. For exmaple, if I
want to run a job that takes lot of time and must be run from terminal and is called
update_entries_tonight .
nohup update_entries_tonight will run the job even if terminal is shut down in middle of this job.

Tty command
Tty command will display your terminal. Syntax is
tty options

Options

 -l will print the synchronous line number.


 -s will return only the codes: 0 (a terminal), 1 (not a terminal), 2 (invalid options) (good for
scripts)
back to top of misc commands
back to top of page

File Management commands.


cat,cd, cp, file,head,tail, ln,ls,mkdir ,more,mv, pwd, rcp,rm, rmdir, wc.

Pwd command.
pwd command will print your home directory on screen, pwd means print working directory.

/u0/ssb/sandeep
is output for the command when I use pwd in /u0/ssb/sandeep directory.

Ls command
ls command is most widely used command and it displays the contents of directory.

options

 ls will list all the files in your home directory, this command has many options.
 ls -l will list all the file names, permissions, group, etc in long format.
 ls -a will list all the files including hidden files that start with . .
 ls -lt will list all files names based on the time of creation, newer files bring first.
 ls -Fxwill list files and directory names will be followed by slash.
 ls -Rwill lists all the files and files in the all the directories, recursively.
 ls -R | more will list all the files and files in all the directories, one page at a time.

Mkdir command.
mkdir sandeep will create new directory, i.e. here sandeep directory is created.

Cd command.
cd sandeep will change directory from current directory to sandeep directory.
Use pwd to check your current directory and ls to see if sandeep directory is there or not.
You can then use cd sandeep to change the directory to this new directory.

Cat command
cat cal.txt cat command displays the contents of a file here cal.txt on screen (or standard out).

Head command.
head filename by default will display the first 10 lines of a file.
If you want first 50 lines you can use head -50 filename or for 37 lines head -37 filename and so
forth.

Tail command.
tail filename by default will display the last 10 lines of a file.
If you want last 50 lines then you can use tail -50 filename.

More command. more command will display a page at a time and then wait for input which is
spacebar. For example if you have a file which is 500 lines and you want to read it all. So you
can use

more filename

Wc command
wc command counts the characters, words or lines in a file depending upon the option.

Options

 wc -l filename will print total number of lines in a file.


 wc -w filename will print total number of words in a file.
 wc -c filename will print total number of characters in a file.
File command.
File command displays about the contents of a given file, whether it is a text (Ascii) or binary
file. To use it type
file filename. For example I have cal.txt which has ascii characters about calander of current
month and I have resume1.doc file which is a binariy file in microsoft word. I will get
file resume.doc

resume1.doc: data
file cal.txt

cal.txt: ascii text

Cp command.
cp command copies a file. If I want to copy a file named oldfile in a current directory to a file
named newfile in a current directory.
cp oldfile newfile
If I want to copy oldfile to other directory for example /tmp then
cp oldfile /tmp/newfile. Useful options available with cp are -p and -r . -p options preserves the
modification time and permissions, -r recursively copy a directory and its files, duplicating the
tree structure.

Rcp command.
rcp command will copy files between two unix systems and works just like cp command (-p and
-i options too).
For example you are on a unix system that is called Cheetah and want to copy a file which is in
current directory to a system that is called lion in /usr/john/ directory then you can use rcp
command
rcp filename lion:/usr/john
You will also need permissions between the two machines. For more infor type man rcp at
command line.

Mv command.
mv command is used to move a file from one directory to another directory or to rename a file.

Some examples:

 mv oldfile newfile will rename oldfile to newfile.


 mv -i oldfile newfile for confirmation prompt.
 mv -f oldfile newfile will force the rename even if target file exists.
 mv * /usr/bajwa/ will move all the files in current directory to /usr/bajwa directory.

Ln command.
Instead of copying you can also make links to existing files using ln command.
If you want to create a link to a file called coolfile in /usr/local/bin directory then you can enter
this command.
ln mycoolfile /usr/local/bin/coolfile

Some examples:

 ln -s fileone filetwo will create a symbolic link and can exist across machines.
 ln -n option will not overwrite existing files.
 ln -f will force the link to occur.

Rm command.
To delete files use rm command.

Options:

 rm oldfile will delete file named oldfile.


 rm -f option will remove write-protected files without prompting.
 rm -r option will delete the entire directory as well as all the subdirectories, very dangerous
command.

Rmdir command.
rmdir command will remove directory or directories if a directory is empty.

Options:

 rm -r directory_name will remove all files even if directory is not empty.


 rmdir sandeep is how you use it to remove sandeep directory.
 rmdir -p will remove directories and any parent directories that are empty.
 rmdir -s will suppress standard error messages caused by -p.

back to top of File management commands


back to top of page

Comparison and Searching


diff,dircmp, cmp, grep, find.

Diff command.
diff command will compare the two files and print out the differences between.
Here I have two ascii text files. fileone and file two.
Contents of fileone are

This is first file


this is second line
this is third line
this is different as;lkdjf
this is not different

filetwo contains

This is first file


this is second line
this is third line
this is different xxxxxxxas;lkdjf
this is not different

diff fileone filetwo will give following output

4c4
< this is different as;lkdjf
---
> this is different xxxxxxxas;lkdjf

Cmp command.
cmp command compares the two files. For exmaple I have two different files fileone and filetwo.

cmp fileone filetwo will give me

fileone filetwo differ: char 80, line 4

if I run cmp command on similar files nothing is returned.


-s command can be used to return exit codes. i.e. return 0 if files are identical, 1 if files are different, 2 if
files are inaccessible.
This following command prints a message 'no changes' if files are same
cmp -s fileone file1 && echo 'no changes' .

no changes

Dircmp Command.
dircmp command compares two directories. If i have two directories in my home directory
named
dirone and dirtwo and each has 5-10 files in it. Then
dircmp dirone dirtwo will return this

Dec 9 16:06 1997 dirone only and dirtwo only Page 1

./cal.txt ./fourth.txt
./dohazaar.txt ./rmt.txt
./four.txt ./te.txt
./junk.txt ./third.txt
./test.txt

Grep Command
grep command is the most useful search command. You can use it to find processes running on
system, to find a pattern in a file, etc. It can be used to search one or more files to match an
expression.
It can also be used in conjunction with other commands as in this following example, output of
ps command is passed to grep command, here it means search all processes in system and find
the pattern sleep.
ps -ef | grep sleep will display all the sleep processes running in the system as follows.

ops 12964 25853 0 16:12:24 ttyAE/AAES 0:00 sleep 60


dxi 12974 15640 0 16:12:25 ttyAH/AAHP 0:00 sleep 60
ops 12941 25688 0 16:12:21 ttyAE/AAEt 0:00 sleep 60
ops 12847 25812 0 16:11:59 ttyAH/AAH6 0:00 sleep 60
ops 12894 25834 0 16:12:12 ttyAE/AAEX 0:00 sleep 60
dxi 13067 27253 2 16:12:48 ttyAE/ABEY 0:00 sleep 1
ops 13046 25761 0 16:12:44 ttyAE/AAE0 0:00 sleep 60
dxi 12956 13078 0 16:12:23 ttyAG/AAG+ 0:00 sleep 60
ops 12965 25737 0 16:12:24 ttyAE/AAEp 0:00 sleep 60
ops 12989 25778 0 16:12:28 ttyAH/AAHv 0:00 sleep 60
ssb 13069 26758 2 16:12:49 ttyAH/AAHs 0:00 grep sleep
pjk 27049 3353 0 15:20:23 ? 0:00 sleep 3600
Options:

 -b option will precede each line with its block number.


 -c option will only print the count of matched lines.
 -i ignores uppercase and lowercase distinctions.
 -l lists filenames but not matched lines.

other associated commands with grep are egrep and fgrep. egrep typically runs faster. for more
information type man egrep or man fgrep in your system.

Find command.
Find command is a extremely useful command. you can search for any file anywhere using this
command provided that file and directory you are searching has read write attributes set to you
,your, group or all. Find descends directory tree beginning at each pathname and finds the files
that meet the specified conditions. Here are some examples.

Some Examples:
find $HOME -print will lists all files in your home directory.
find /work -name chapter1 -print will list all files named chapter1 in /work directory.
find / -type d -name 'man*' -print will list all manpage directories.
find / -size 0 -ok rm {} \; will remove all empty files on system.

conditions of find

 -atime +n |-n| n will find files that were last accessed more than n or less than -n days or n days.
 -ctime +n or -n will find that were changed +n -n or n days ago.
 -depth descend the directory structure, working on actual files first and then directories. You
can use it with cpio command.
 -exec commad {} \; run the Unix command on each file matched by find. Very useful condition.
 -print print or list to standard output (screen).
 -name pattern find the pattern.
 -perm nnnfind files whole permission flags match octal number nnn.
 -size n find files that contain n blocks.
 -type c Find file whole type is c. C could be b or block, c Character special file, d directory, p fifo
or named pipe, l symbolic link, or f plain file.

back to top of misc commands


back to top of page

Text processing
cut,paste, sort, uniq,awk,sed,vi.
Cut command.
cut command selects a list of columns or fields from one or more files.
Option -c is for columns and -f for fields. It is entered as
cut options [files]
for example if a file named testfile contains

this is firstline
this is secondline
this is thirdline
Examples:
cut -c1,4 testfile will print this to standard output (screen)

ts
ts
ts
It is printing columns 1 and 4 of this file which contains t and s (part of this).

Options:

 -c list cut the column positions identified in list.


 -f list will cut the fields identified in list.
 -s could be used with -f to suppress lines without delimiters.

Paste Command.
paste command merge the lines of one or more files into vertical columns separated by a tab.
for example if a file named testfile contains

this is firstline
and a file named testfile2 contains

this is testfile2
then running this command
paste testfile testfile2 > outputfile
will put this into outputfile

this is firstline this is testfile2


it contains contents of both files in columns.
who | paste - - will list users in two columns.

Options:

 -d'char' separate columns with char instead of a tab.


 -s merge subsequent lines from one file.
Sort command.
sort command sort the lines of a file or files, in alphabetical order. for example if you have a file
named testfile with these contents

zzz
aaa
1234
yuer
wer
qww
wwe
Then running
sort testfile
will give us output of

1234
aaa
qww
wer
wwe
yuer
zzz
Options:

 -b ignores leading spaces and tabs.


 -c checks whether files are already sorted.
 -d ignores punctuation.
 -i ignores non-printing characters.
 -n sorts in arithmetic order.
 -ofile put output in a file.
 +m[-m] skips n fields before sorting, and sort upto field position m.
 -r reverse the order of sort.
 -u identical lines in input file apear only one time in output.

Uniq command.
uniq command removes duplicate adjacent lines from sorted file while sending one copy of each
second file.
Examples

sort names | uniq -d will show which lines appear more than once in names file.

Options:

 -c print each line once, counting instances of each.


 -d print duplicate lines once, but no unique lines.
 -u print only unique lines.

Awk and Nawk command.


awk is more like a scripting language builtin on all unix systems. Although mostly used for text
processing, etc.
Here are some examples which are connected with other commands.
Examples:
df -t | awk 'BEGIN {tot=0} $2 == "total" {tot=tot+$1} END {print (tot*512)/1000000}' Will
give total space in your system in megabytes.
Here the output of command df -t is being passed into awk which is counting the field 1 after
pattern "total" appears. Same way if you change $1 to $4 it will accumulate and display the
addition of field 4
which is used space.
for more information about awk and nawk command in your system enter man awk or man
nawk.

Sed command.
sed command launches a stream line editor which you can use at command line.
you can enter your sed commands in a file and then using -f option edit your text file. It works as

sed [options] files

options:

 -e 'instruction' Apply the editing instruction to the files.


 -f script Apply the set of instructions from the editing script.
 -n suppress default output.

for more information about sed, enter man sed at command line in your system.

Vi editor.
vi command launches a vi sual editor. To edit a file type
vi filename
vi editor is a default editor of all Unix systems. It has several modes. In order to write characters
you will need to hit i to be in insert mode and then start typing. Make sure that your terminal has
correct settings, vt100 emulation works good if you are logged in using pc.
Once you are done typing then to be in command mode where you can write/search/ you need to
hit :w filename to write
and in case you are done writing and want to exit
:w! will write and exit.

options:

 i for insert mode.


o I inserts text at the curson
o A appends text at the end of the line.
o a appends text after cursor.
o O open a new line of text above the curson.
o o open a new line of text below the curson.
 : for command mode.
o <escape> to invoke command mode from insert mode.
o :!sh to run unix commands.
o x to delete a single character.
o dd to delete an entire line
o ndd to delete n number of lines.
o d$ to delete from cursor to end of line.
o yy to copy a line to buffer.
o P to paste text from buffer.
o nyy copy n number of lines to buffer.
o :%s/stringA/stringb /g to replace stringA with stringB in whole file.
o G to go to last line in file.
o 1G to go to the first line in file.
o w to move forward to next word.
o b to move backwards to next word.
o $ to move to the end of line.
o J join a line with the one below it.
 /string to search string in file.
 n to search for next occurence of string.

back to top of Text processing commands


back to top of page

Shell and programming

Shell programming,bourne shell, ksh, csh, echo,line,sleep, test,cc compiler.


Shell programming concepts and commands.
Shell programming is integral part of Unix operating systems. Shell is command line
userinterface to Unix operating system, User have an option of picking an interface on Unix such
as ksh, csh, or default sh., these are called shells(interface). Shell programming is used to
automate many tasks. Shell programming is not a programming language in the truest sense of
word since it is not compiled but rather an interpreted language. Unix was written in C language
and thus c language is integral part of unix and available on all versions. Shells, like ksh and csh
are popular shells on unix although there are 5 or 6 different shells available but I will only be
discussing ksh and csh as well as sh. Common features among all shells are job control, for
example if I am running a processes which is searching the whole system for .Z files and output
is directed to a file named compressedfiles.

example:

 find / -name *.Z -print > compressedfiles


then after entering this command hitting
 <control z>
key will suspend this job, then entering
 bg
at command line will put this job in background, entering
 fg
will put this job in foreground. Entering
 jobs
at command line will show me all my concurrent jobs that are running.

Other common features

o > will redirect output from standard out (screen) to file or printer or whatever you like.
o >> filename will append at the end of a file called filename.
o < will redirect input to a process or commnand.
o | pipe output, or redirect output, good for joining commands, i.e. find command with
cpio, etc.
o & at the end of command will run command in background.
o ; will separate commands on same line.
o * will match any characters in a file or directories. junk* will match all files with first 4
letters
o ? will match single characters in a file.
o [] will match any characters enclosed.
o () execute in subshell.
o ` ` to run a command inside another command and use its output.
o " " partial quote for variables.
o ' ' full quote for variables.
o # begin comment (if #/bin/ksh or csh or sh is entered at first line of script it runs script in
that shell)
o bg background execution.
o break break from loop statements.
o continue Resume a program loop.
o Kill pid number will terminate running jobs
o stop will stop background job.
o suspend will suspend foreground job.
o wait will wait for a background job to finish.

Bourne Shell (sh shell).


sh or Bourne shell is default shell of Unix operating systems and is the most simplest shell in
Unix systems.

Examples:

 cd; ls execute one after another.


 (date;who;pwd)> logifile will redirect all the output from three commands to a filenamed
logfile.
 sort file | lp will first sort a file and then print it.
 alias [options] [name[='command']] will let you create your own commands. i.e.
o alias ll="ls -la" will execute `ls -la` command whenever ll is entered.
 let expressions is syntax of let statement.
o let i=i+1 will work as a counter with i incrementing each time this statement is
encountered.
 for x[in list] do commands done is syntax for for do loop.
 function name {commands;} is the syntax of a function which can be called from anywhere in
program.
 if condition1 then commands1 elif condition2 then commands2 ... ... ... else commands3 fi

Ksh shell (Korn).


Ksh or Korn shell is widely used shell.

Csh or C shell
csh is second most used shell.

Echo command
echo command in shell programming.
Line command.
line command in shell programming.

Sleep command.
sleep command in shell programming.

Test Command.
test command in shell programming.

CC compiler (c programming language compiler).


Since Unix is itself written in C programming language, most Unix operating systems come with
c compiler called cc.

back to top of Shell programming.


back to top of page

Communications

cu,ftp,login, rlogin,talk,telnet, vacation and write .

Cu command.
cu command is used for communications over a modem or direct line with another Unix system.
Syntax is
cu options destination

Options

 -bn process lines using n-bit characters (7 or 8).


 -cname Search UUCP's device file and select local area network that matches name.
 -d Prints diagnostics.
 -e sends even parity data to remote system
 -lline communicate on this device (line=/dev/tty001, etc)
 -n prompts for a telephone number.
 -sn set transmission rate to n(e.g 1200,2400,9600, BPS)

Destination

 telno is the telephone number of the modem to connect to.


 system is call the system known to uucp.
 aadr is an address specific to LAN.

Ftp command (protocol).


ftp command is used to execute ftp protocol using which files are transferred over two systems.
Syntax is
ftp options hostname

options

 -d enable debugging.
 -g disable filename globbing.
 -i turn off interactive prompts.
 -v verbose on. show all responses from remote server.

ftp hostname by default will connect you to the system, you must have a login id to be able to transfer
the files. Two types of files can be transferred, ASCII or Binary. bin at ftp> prompt will set the transfer to
binary. Practice FTP by ftping to nic.funet.fi loggin in as anomymous with password being your e-mail
address.

Login command.
login command invokes a login session to a Unix system, which then authenticates the login to a
system. System prompts you to enter userid and password.

Rlogin command.
rlogin command is used to log on to remote Unix systems, user must have permissions on both
systems as well as same userid, or an id defined in .rhosts file. Syntax is
rlogin options host
options

 -8 will allow 8 bit data to pass, instead of 7-bit data.


 -e c will let you use escape character c.
 -l user will let you to login as user to remote host, instead of same as local host.

Talk command.
talk command is used to invoke talk program available on all unix system which lets two users
exchange information back and forth in real time. Syntax is
talk userid@hostname

Telnet command.
Telnet command invokes a telnet protocol which lets you log on to different unix, vms or any
machine connected over TCP/IP protocol, IPx protocol or otherwise. Syntax is
telnet hostname

Vacation command.
vacation command is used when you are out of office. It returns a mail message to sender
announcing that you are on vacation. to disable this feature, type mail -F " " .
syntax is
vacation options

Options

 -d will append the date to the logfile.


 -F user will forward mail to user when unable to send mail to mailfile.
 -l logfile will record in the logfile the names of senders who received automatic reply.
 -m mailfile will save received messages in mailfile.

Write command will initiate an interactive conversation with user. Syntax is


write user tty
Storage commands
compress uncompress, cpio,dump,pack, tar, mt.

Compress command.
Compress command compresses a file and returns the original file with .z extension, to
uncompress this filename.Z file use uncompress filename command. syntax for compress
command is
compress options files

Options

 -bn limit the number of bits in coding to n.


 -c write to standard output (do not change files).
 -f compress conditionally, do not prompt before overwriting files.
 -v Print the resulting percentage of reduction for files.

Uncompress command.
Uncompress file uncompresses a file and return it to its original form.
syntax is
uncompress filename.Z this uncompresses the compressed file to its original name.

Options

 -c write to standard output without changing files

Cpio command.
cpio command is useful to backup the file systems. It copy file archives in from or out to tape or
disk, or to another location on the local machine. Its syntax is
cpio flags [options]

It has three flags, -i, -o, -p


 cpio -i [options] [patterns]
o cpio -i copy in files who names match selected patterns.
o If no pattern is used all files are copied in.
o It is used to write to a tape.

cpio -o

o Copy out a list of files whose name are given on standard output.

cpio -p

o copy files to another directory on the same system.

Options

o -a reset access times of input files.


o -A append files to an archive (must use with -o).
o -b swap bytes and half-words. Words are 4 bytes.
o -B block input or output using 5120 bytes per record.
o -c Read or write header information as Ascii character.
o -d create directories as needed.
o -l link files instead of copying.
o -o file direct output to a file.
o -r rename files interactively.
o -R ID reassign file ownership and group information to the user's login ID.
o -V print a dot for each file read or written.
o -s swap bytes.
o -S swap half bytes.
o -v print a list of filenames.

Examples

o find . -name "*.old" -print | cpio -ocvB > /dev/rst8 will backup all *.old files to a tape
in /dev/rst8
o cpio -icdv "save"" < /dev/rst8 will restore all files whose name contain "save"
o find . -depth -print | cpio -padm /mydir will move a directory tree.

Dump command is useful to backup the file systems.


dump command copies all the files in filesystem that have been changed after a certain date. It is
good for incremental backups. This information about date is derived from /var/adm/dumpdates
and /etc/fstab .
syntax for HP-UX dump is
/usr/sbin/dump [option [argument ...] filesystem]
Options

 0-9 This number is dump level. 0 option causes entire filesystem to be dumped.
 b blocking factor taken into argument.
 d density of tape default value is 1600.
 f place the dump on next argument file instead of tape.
 This example causes the entire file system (/mnt) to be dumped on /dev/rmt/c0t0d0BEST and
specifies that the density of the tape is 6250 BPI.
o /usr/sbin/dump 0df 6250 /dev/rmt/c0t0d0BEST /mnt
 for more info type man dump at command line.

Pack command.
pack command compacts each file and combine them together into a filename.z file. The original
file is replaced. Pcat and unpack will restore packed files to their original form.
Syntax is
Pack options files

Options

 - Print number of times each byte is used, relative frequency and byte code.
 -f Force the pack even when disk space isn't saved.

 To display Packed files in a file use pcat command


pcat filename.z
 To unpack a packed file use unpack command as unpack filename.z .

Tar command.
tar command creates an archive of files into a single file.
Tar copies and restore files to a tape or any storage media. Synopsis of tar is
tar [options] [file]

Examples:
tar cvf /dev/rmt/0 /bin /usr/bin creates an archive of /bin and /usr/bin, and store on the tape in
/dev/rmt0.
tar tvf /dev/rmt0 will list the tape's content in a /dev/rmt0 drive.
tar cvf - 'find . -print' > backup.tar will creates an archive of current directory and store it in file
backup.tar.

Functions:

 c creates a new tape.


 r append files to a tape.
 t print the names of files if they are stored on the tape.
 x extract files from tape.

Options:

 b n use blocking factor of n.


 l print error messages about links not found.
 L follow symbolic links.
 v print function letter (x for extraction or a for archive) and name of files.

Mt command
Mt command is used for tape and other device functions like rewinding, ejecting, etc. It give
commands to tape device rather than tape itself. Mt command is BSD command and is seldom
found in system V unix versions.
syntax is
mt [-t tapename] command [count]

mt for HP-UX accept following commands

 eof write count EOF marks.


 fsf Forward space count files.
 fsr Forward space count records.
 bsf Backward space count files.
 bsr Backward space count records.
 rew Rewind tape.
 offl Rewind tape and go offline.
 eod Seek to end of data (DDS and QIC drives only).
 smk Write count setmarks (DDS drives only).
 fss Forward space count setmarks (DDS drives only).
 bss Backward space count setmarks (DDS drives only).
 Examples
o mt -t /dev/rmt/0mnb rew will rewind the tape in this device.
o mt -t /dev/rmt/0mnb offl will eject the tape in this device.

System Status
at, chmod,chgrp, chown,crontab,date, df,du, env, finger, ps,ruptime, shutdwon,stty, who.
At command.
at command along with crontab command is used to schedule jobs.
at options time [ddate] [+increment] is syntax of at command.
for example if I have a script named usersloggedin which contains.

#!/bin/ksh
who | wc -l
echo "are total number of people logged in at this time."
and I want to run this script at 8:00 AM. So I will first type at 8:00 %lt;enter>
usersloggedin %lt;enter>
I will get following output at 8:00 AM

30
are total number of people logged in at this time.
Options:

 -f file will execute commands in a file.


 -m will send mail to user after job is completed.
 -l will report all jobs that are scheduled and their jobnumbers.
 -r jobnumber will remove specified jobs that were previously scheduled.

Chmod command.
chmod command is used to change permissions on a file.
for example if I have a text file with calender in it called cal.txt.
initially when this file will be created the permissions for this file depends upon umask set in
your profile files. As you can see this file has 666 or -rw-rw-rw attributes.

ls -la cal.txt

-rw-rw-rw- 1 ssb dxidev 135 Dec 3 16:14 cal.txt

In this line above I have -rw-rw-rw- meaning respectively that owner can read and write file,
member of the owner's group can read and write this file and anyone else connected to this
system can read and write this file., next ssb is owner of this file dxidev is the group of this
file, there are 135 bytes in this file, this file was created on December 3 at time16:14 and at
the end there is name of this file. Learn to read these permissions in binary, like this for
example Decimal 644 which is 110 100 100 in binary meand rw-r--r-- or user can read,write this
file, group can read only, everyone else can read only. Similarly, if permissions are 755 or 111
101 101 that means rwxr-xr-x or user can read, write and execute, group can read and execute,
everyone else can read and execute. All directories have d in front of permissions. So if you don't
want anyone to see your files or to do anything with it use chmod command and make
permissions so that only you can read and write to that file, i.e.
chmod 600 filename.

Chgrp command.
chgrp command is used to change the group of a file or directory.
You must own the file or be a superuser.
chgrp [options] newgroup files is syntax of chgrp.
Newgroup is either a group Id or a group name located in /etc/group .

Options:

 -h will change the group on symbolic links.


 -R recursively descend through directory changing group of all files and subdirectories.

Chown command.
chown command to change ownership of a file or directory to one or more users.
Syntax is
chown options newowner files

Options

 -h will change the owner on symbolic links.


 -R will recursively descend through the directory, including subdirectories and symbolic links.

Crontab command.
crontab command is used to schedule jobs. You must have permission to run this command by
unix Administrator. Jobs are scheduled in five numbers, as follows.

Minutes 0-59
Hour 0-23
Day of month 1-31
month 1-12
Day of week 0-6 (0 is sunday)
so for example you want to schedule a job which runs from script named backup_jobs in /usr/local/bin
directory on sunday (day 0) at 11.25 (22:25) on 15th of month. The entry in crontab file will be. *
represents all values.

25 22 15 * 0 /usr/local/bin/backup_jobs
The * here tells system to run this each month.
Syntax is
crontab file So a create a file with the scheduled jobs as above and then type
crontab filename .This will scheduled the jobs.

Date command.
Date displays todays date, to use it type date at prompt.

Sun Dec 7 14:23:08 EST 1997


is similar to what you should see on screen.

Df command.
df command displays information about mounted filesystems. It reports the number of free disk
blocks. Typically a Disk block is 512 bytes (or 1/2 Kilobyte).
syntax is
df options name

Options

 -b will print only the number of free blocks.


 -e will print only the number of free files.
 -f will report free blocks but not free inodes.
 -F type will report on an umounted file system specified by type.
 -k will print allocation in kilobytes.
 -l will report only on local file systems.
 -n will print only the file system name type, with no arguments it lists type of all filesystems

Du command.
du command displays disk usage.

Env command.
env command displays all the variables.
Finger command.
finger command.

PS command
ps command is probably the most useful command for systems administrators. It reports
information on active processes.
ps options

options.

 -a Lists all processes in system except processes not attached to terminals.


 -e Lists all processes in system.
 -f Lists a full listing.
 -j print process group ID and session ID.

Ruptime command.
ruptime command tells the status of local networked machines.
ruptime options

options.

 -a include user even if they've been idle for more than one hour.
 -l sort by load average.
 -r reverse the sort order.
 -t sort by uptime.
 -i sort by number of users.

Shutdown command.
Shutdown command can only be executed by root. To gracefully bring down a system, shutdown
command is used.

options.

 -gn use a grace-period of n seconds (default is 60).


 -ik tell the init command to place system in a state k.
o s single-user state (default)
o 0 shutdown for power-off.
o 1 like s, but mount multi-user file systems.
o 5 stop system, go to firmware mode.
o 6 stop system then reboot.
 -y suppress the default prompt for confirmation.

Stty command
stty command sets terminal input output options for the current terminal. without options stty
reports terminal settings.
stty options modes < device

options

 -a report all options.


 -g report current settings.

Modes

 0 hang up phone.
 n set terminal baud.
 erase keyname, will change your keyname to be backspace key.

Who command
who command displays information about the current status of system.
who options file
Who as default prints login names of users currently logged in.

Options

 -a use all options.


 -b Report information about last reboot.
 -d report expired processes.
 -H print headings.
 -p report previously spawned processes.
 -u report terminal usage.
Sample Interview Questions

Telephone Interview Questions

1. In your career, what have you done that you are the most proud of?
2. What are the specific skill sets that you would bring to this job?
3. What do you think is the biggest challenge facing ________ today?
4. What must an organization provide in order for you to do your best?
5. If you could change one thing in your last job (or present job), what would it be?
6. If I were to speak to your co-workers, what would they say about you?
7. Why should I consider you for this position?

Face-to-face interview questions

1. Describe how you first became interested in ___________ (whatever field of work).
2. Give me an example of some goals you’ve had and how you achieved them.
3. Tell me about one of the toughest groups with which you’ve had to work. What made the group
tough? What did you do?
4. What are the biggest decisions you’ve made in the past year on the job? Tell me how you made
them.
5. Give me an example of a time you disagreed with a directive given by your supervisor. What
happened?
6. What gives you greatest joy in your work and why?
7. Describe a risk you took in a job. What was the result?
8. Tell me about a time in which your work was criticized. What happened? How did you respond?
9. What has been your greatest frustration or disappointment in your present job? Why?
10. What approaches do you use in talking with people who have very different personalities or work
styles than your own?
11. What makes you angry in the workplace?
12. How would you set priorities for this position? How would you spend your first six months?
13. What do you expect from ACU as your employer?

1. Step 1

What are your weaknesses?

You want to be honest here. Don't try to flip the question around or say something
stupid like "I work too much." Be honest! You know what your weaknesses are. Only
a confident person can confidently display their weaknesses. This will show how
honest you are and how well you will fit in the company culture.

2. Step 2

Run down your resume for me.

I have a great technique for this called the "resume line-by-line" technique. Open
two windows on your computer. On one, pull up your resume and the other pull up
the job description. Read the job description twice and now go back to your resume.
Now, line-by-line, go through you're resume and practice putting your skills in the
words that you just read in the job description. This way you will prep your mind to
think only in terms of the job description when answering the interviewer's questions,
i.e. you will almost respond the way they want you to respond. Nice.

3. Step 3

Why do you want to work for our company?

You have to do your research! Follow the company's mission statement. Follow the
recent press releases. Find your passion. What's that one thing that you like in the
company? Besides money, benefits, or break-times. Do you like the people? The
talent? The background of the leadership? The company's responsibility to the
community? Understanding these things are what makes the interviewer go "wow,
this person is a great fit for our company."

Type of Dimension
Conformed Dimension

Dimensions are conformed when they are either exactly the same (including keys) or one is a
perfect subset of the other. Most important, the row headers produced in the answer sets from
two different conformed dimensions must be able to match perfectly.
Conformed dimensions are either identical or strict mathematical subsets of the most granular,
detailed dimension. Dimension tables are not conformed if the attributes are labeled differently
or contain different values. Conformed dimensions come in several different flavors. At the most
basic level, conformed dimensions mean the exact same thing with every possible fact table to
which they are joined. The date dimension table connected to the sales facts is identical to the
date dimension connected to the inventory facts.[1]

Junk Dimension

A junk dimension is a convenient grouping of typically low-cardinality flags and indicators. By


creating an abstract dimension, these flags and indicators are removed from the fact table while
placing them into a useful dimensional framework.[2]

Degenerated Dimension

A dimension key, such as a transaction number, invoice number, ticket number, or bill-of-lading
number, that has no attributes and hence does not join to an actual dimension table. Degenerate
dimensions are very common when the grain of a fact table represents a single transaction item
or line item because the degenerate dimension represents the unique identifier of the parent.
Degenerate dimensions often play an integral role in the fact table's primary key.[3]

Role-Playing Dimensions

Dimensions are often recycled for multiple applications within the same database. For instance, a
"Date" dimension can be used for "Date of Sale", as well as "Date of Delivery", or "Date of
Hire". This is often referred to as a "role-playing dimension

what is junk dimension? what is the difference between junk dimension and degenerated
dimension?

Junk dimension: Grouping of Random flags and text Attributes in a dimension and moving them
to a separate sub dimension.

Degenerate Dimension: Keeping the control information on Fact table ex: Consider a Dimension
table with fields like order number and order line number and have 1:1 relationship with Fact
table, In this case this dimension is removed and the order information will be directly stored in a
Fact table inorder eliminate unneccessary joins while retrieving order information..

What is the difference between view and materialized view?


A view takes the output of a query and makes it appear like a virtual table and it can be used in place of
tables.
A materialized view provides indirect access to table data by storing the results of a query in a separate
schema object.
If de-normalized is improves data warehouse processes, why fact table is in normal form?
Foreign keys of facts tables are primary keys of Dimension tables. It is clear that fact table contains
columns which are primary key to other table that itself make normal form table

What is junk dimension?


A number of very small dimensions might be lumped together to form a single dimension, a junk
dimension - the attributes are not closely related. Grouping of Random flags and text attributes in a
dimension and moving them to a separate sub dimension is known as junk dimension

Explain paradigm of Bill Inmon and Ralph Kimball.


Bill Inmon’s paradigm: Data warehouse is one part of the overall business intelligence system. An
enterprise has one data warehouse, and data marts source their information from the data warehouse.
In the data warehouse, information is stored in 3rd normal form.Ralph Kimball’s paradigm: Data
warehouse is the conglomerate of all data marts within the enterprise. Information is always stored in t
What is surrogate key?
Surrogate key is a substitution for the natural primary key. It is just a unique identifier or number for
each row that can be used for the primary key to the table. The only requirement for a surrogate
primary key is that it is unique for each row in the table. It is useful because the natural primary key can
change and this makes updates more difficult. Surrogated keys are always integer or numeriche
dimensional model

You might also like