shell scripting

Conditionals let us decide whether to perform an action or not, this decision is taken by evaluating an expression. Expressions An expression can be: String comparison, Numeric comparison, File operators and Logical operators and it is represented by [expression]:

String Comparisons:

--------------------------------- = compare if two strings are equal != compare if two strings are not equal -n evaluate if string length is greater than zero -z evaluate if string length is equal to zero
= is equal to - if [ "$a"= "$b" ]
== is equal to -f if [ "$a"=="$b" ]
!= is not equal to if [ "$a" !="$b" ] < is less then ,in ASCII alphabetical order if [["$a" < "$b"]]
> is greater than, in ASCII alphabetical order if [[ "$a" > "$b"]]
-z string is null, that is has zero length


Examples: [ s1 = s2 ] (true if s1 same as s2, else false) [ s1 != s2 ] (true if s1 not same as s2, else false) [ s1 ] (true if s1 is not empty, else false) [ -n s1 ] (true if s1 has a length greater then 0, else false) [ -z s2 ] (true if s2 has a length of 0, otherwise false) Number Comparisons: ------------------------------------

-eq is equal to if [ "$a" -eq "$b" ]
-ne is not equal to if [ "$a" -ne "$b" ]
-gt is greater than if [ "$a" -gt "$b" ]
-ge is greater than or equal to if [ "$a" -ge "$b" ]
-lt is less than if [ "$a" -lt "$b" ]
-le is less than or equal to if [ "$a" -le "$b" ] < is less than (("$a"<"$b" ))
<= is less than or equal to (("$a" <= "$b"))
> is greater than ["$a" > "$b"]
>= is greater than equal to ["$a" >= "$b"]


-eq compare if two numbers are equal -ge compare if one number is greater than or equal to a number -le compare if one number is less than or equal to a number -ne compare if two numbers are not equal -gt compare if one number is greater than another number -lt compare if one number is less than another number Examples: [ n1 -eq n2 ] (true if n1 same as n2, else false) [ n1 -ge n2 ] (true if n1greater then or equal to n2, else false) [ n1 -le n2 ] (true if n1 less then or equal to n2, else false) [ n1 -ne n2 ] (true if n1 is not same as n2, else false) [ n1 -gt n2 ] (true if n1 greater then n2, else false) [ n1 -lt n2 ] (true if n1 less then n2, else false)

BASH command output to the variable

Command Substitution Syntax:

variable=$(command)
variable=$(command [option…] argument1 arguments2 …)
variable=$(/path/to/command)
OR
variable=`command`
variable=`command [option…] argument1 arguments2 …`
variable=`/path/to/command`

***Note: Don’t use any space before and after the equal sign when using the above commands.

Comments

Popular posts from this blog

cpanel exam CPSP Answers

How to install zimbra collaboration suite 8.8.11 on CentOS 7

awstats installation