Wednesday, February 1, 2017

Bash for loop example 1

Bash for loop example 1


#!/bin/bash
# Usage: script.sh number
# A for loop example produces following output
#
# *
# * *
# * * *
# * * * *
# * * * * *
#

Method1

c=1
n=$1
echo -e "33[47mc" #colourizing output
for ((row=1;row<=n;row++))
do
for ((i=row;i<n;i++))
do
echo -n
done
for ((k=1;k<=c;k++))
do
if [ $((k%2)) -eq 0 ]
then
echo -n " "
else
echo -e "33[43m * 33[47mc"
fi
done
for ((i=row;i<n;i++))
do
echo -n
done
c=$((c+2))
echo
done
echo -e "33[0m" #Restoring colours
unset c i k n row

Method2

#!/bin/bash
n=$1
t=$((2*n - 1 ))
a=$n
b=$((a+1))
echo -e -n "33[47m"
for (( i=1 ; i<=$n ;i++ ))
do
a=$(($b-1))
b=$a
k=1
for (( j=1 ; j<=$t ; j++ ))
do
if [ $j -eq $a ]
then

echo -e "33[43m * 33[47mc"
if [ $k -lt $i ]
then

a=$((a+2))
let k++
fi
else
echo -n " "
fi

done
echo
done
echo -e "33[0m"
Output:

Available link for download