Monday, 28 August 2017

Unix Shell Scripting Tutorial - page 3

Unix Shell Scripting Tutorial - page 3

Question: What are special variable in unix?
Special variable are those variable which are reserved by unix shell. For Example $$ is special variable and it return the current process id.


Question: How to use array variable in for loop?
Yes, we can define.
NUMS="1 2 3 4 5 6 7 8 9"
for NUM in $NUMS
do
   Q=`expr $NUM % 2`
   if [ $Q -eq 0 ]
   then
      echo "Number is an even number!!"
      continue
   fi
   echo "Found odd number"
done



Question: Give example of while with break?
a=2
while [ $a -lt 10 ]
do
   echo $a
   if [ $a -eq 5 ]
   then
      break
   fi
   a=`expr $a + 1`
done

Once $a will reach to 5, then it will break the statement.
output
2
3
4
5



Question: How to print the special character as string?
Use the Backslash before the special character, It will print. For Example:
echo \$;



Question: What is Output Redirection?
We use > notation to Output Redirection.
who > users
If a command has its output redirected to a file and the file already contains some data, that data will be lost.

We can use >> to append in file, it will not lost the data.
who >> users


Question: What are the Redirection Commands?
  1. pgm > file: Output of pgm is redirected to file.
  2. pgm < file: Program pgm reads its input from file.
  3. pgm >> file: Output of pgm is appended to file.
  4. n > file: Output from stream with descriptor n redirected to file
  5. n >> file: Output from stream with descriptor n appended to file
  6. n >& m: Merges output from stream n with stream m.



Question: How to create a custom function?
# Create a new function with name of Hello
Hello () {
   echo "Hello World! How are you?"
}

# Call the function
Hello



Question: How to create a custom function with parameter?
# Define your function here
Hello () {
   echo "Hello World! How are you?"
   echo "First parameter: $1";
   echo "Second parameter: $2";    
}

# Invoke your function
Hello first second

Output
Hello World! How are you?
First parameter: first
Second parameter: second



Thursday, 24 August 2017

Unix Shell Scripting Tutorial - page 2

Unix Shell Scripting Tutorial - page 2

Question: What are special variable in unix?
Special variable are those variable which are reserved by unix shell. For Example $$ is special variable and it return the current process id.


Question: List the special variable?
  1. $$: Give the current process ID.
  2. $0: File name of current script.
  3. $n: $1 will give first argument, $2 will give 2nd argument.
  4. $#: The number of arguments supplied to a script.
  5. $*: Return all the arguments.
  6. $?: The exit status of the last command executed.
  7. $!: Process number of last command



Question: Can we define array variables?
Yes, we can define.
NAME01="Name 1"
NAME02="Name 2"
NAME03="Name 3"
NAME04="Name 4"
NAME05="Name 5"



Question: How to define array variable and use them?
Define Array variable
NAME01="Name 1"
NAME02="Name 2"
NAME03="Name 3"
NAME04="Name 4"
NAME05="Name 5"

Use single variable
echo $NAME[2];


Print each and every variable
for i in NAME01 NAME02 NAME03 NAME04 NAME05
do
  echo $i;
done



Question: How to print array in single line?
echo  ${NAME[*]};

Question: How to use Relational Operators?
  1. -eq: Equal
  2. -ne: Not Equal
  3. -gt: Greater than
  4. -lt: Less than
  5. -ge: Greater than OR Equal to
  6. -le: Less than OR Equal to



Question: How to use Boolean Operators?
  1. !: Not
  2. -o: OR
  3. -a: And



Question: Give an example of while?
a=1
while [ $a -lt 10 ]
do
   echo $a
   if [ $a -eq 5 ]
   then
      break
   fi
   a=`expr $a + 1`
done



Question: What is Substitution?
The shell performs substitution when it encounters an expression that contains one or more special characters.


Question: Give few example of Variable Substitution?
Variable substitution enables the shell programmer to manipulate the value of a variable based on its state.
Examples
${var}

${var:-word}
If var is null, word is substituted for var.
${var:=word}
If var is null, var is set to the value of word.
${var:?message}
If var is null, message is printed to standard error.
${var:+word}
If var is set, word is substituted for var.


Question: What are the Metacharacters?
metacharacters have special meaning while using them in any Shell Script and causes termination of a word unless quoted.


Following are the meta characters.
    
        * ? [ ] ' " \ $ ;  ( ) | ^