theshell.ch/site/pages/scripts/7-if.html
bevilj a6515acdb9 order pages for navigation
git-svn-id: svn+ssh://atelier.inf.usi.ch/home/bevilj/group-1@254 a672b425-5310-4d7a-af5c-997e18724b81
2018-11-18 20:38:56 +00:00

142 lines
3.3 KiB
HTML

---
layout: page
category-page: scripts
category-title: Scripting
tags: if else script scripting read
author: Matteo Omenetti
title: If statement
previous-page: pages/scripts/6-while-loop.html
next-page: pages/scripts/8-redirection.html
---
<!-- Introduction -->
If statements allow us to make decisions in our Bash scripts. They allow us to
whether run or not a piece of code based on a condition that we set. <br>
If statements take this form:
{% highlight bash %}
if [condition]; then
command1
command2
command3
...
fi
{% endhighlight %}
Anything between <code>then</code> and <code>fi</code> will be executed only if the condition
evaluates to true. <br>
Here is a simple example:
{% highlight bash %}
i=210;
if [$i -ge 200]; then
echo "You chose a big number."
fi
{% endhighlight %}
In this first example we evaluate a variable <code>i</code> to 105.
The <i> if statement </i> will print "You chose a big number"
only if the number contained in our variable <code>i</code> is <b>G</b>reater or
<b>E</b>qual to 200. <br>
This is our case, therefore the output of this piece of code will be:
<pre>
You chose a big number.
</pre>
<!-- End of Introduction -->
<!-- If Else -->
<h3> If Else </h3>
Sometimes we want to perform a certain set of actions, if our condition evaluates to
true and another set of actions if our condition evaluates to false. We can do this with
the <i> if else </i> statement.
<i> if else </i> sattements take this form:
{% highlight bash %}
if [condition]; then
command1
command2
command3
...
else
command1
command2
command3
...
fi
{% endhighlight %}
Here is a simple example:
{% highlight bash %}
i=50;
if [$i -ge 200]; then
echo "You chose a big number."
else
echo "You chose a small number."
fi
{% endhighlight %}
In this example, that is just an extension of the previous example, we
evaluate a variable <code>i</code> to 50. If <code>i</code> is greater or equal to
200, you print out "You chose a big number", otherwise,
(if <code>i</code> is not greater or equal to 200), just like in this case, you print out
"You chose a small number".
Therefore, the output of this piece of code is:
<pre>
You chose a small number.
</pre>
<!-- End of If Else -->
<!-- If Elif Else -->
<h3> If Elif Else </h3>
Sometimes, in programming, it is necessary to have a series of conditions that lead to
different paths. We can accommodate this need with the <i>if else elif</i> mechanism.
The <i>if else elif</i> mechanism takes this form:
{% highlight bash %}
if [condition]; then
command1
command2
command3
...
elif [condition]; then
command1
command2
command3
...
else
command1
command2
command3
...
fi
{% endhighlight %}
Here is a simple example:
{% highlight bash %}
i=150;
if [$i -ge 200]; then
echo "You chose a big number."
elif [$i == 150]; then
echo "You chose 150".
else
echo "You chose a small number"
fi
{% endhighlight %}
In this example, that is just an extension of the previous example, we evaluate a
variable <code>i</code> to 150. If <code>i</code> is greater or equal to 200,
you print out "You chose a big number", if <code>i</code> is equal to 150 you print out
"You chose 150" otherwise you print out "You chose a small number".
Therefore, the output of this piece of code is:
<pre>
You chose 150.
</pre>