bash_scripting

This is an old revision of the document!


Bash Scripting

Conditionals

  • The special variable ? has the exit/return value of the last program/command that ran.
if [ $? -eq 0 ]; then
    echo "All is well."
    exit 0
elif [ $? -eq 1 ]; then 
    echo "Doh!"
    exit 1
else
   echo "Really?!"
   exit 2
fi

One line if statement

if [$? -eq 0]; then echo "OK"; else echo "Error"; fi

Iteration

for loop

for i in alpha beta gamma
do
    printf "$i\n"
done
 
a=alpha
b=beta
c=gamma
 
for j in "$a" "$b" "$c"; do
    printf "$j\n"
done
for i in $( ls ); do
  echo item: $i
done
 
LIST="$(ls *.html)"
for i in "$LIST"; do
   echo $1
done

while loop

COUNTER=0
 
while [  $COUNTER -lt 10 ]; do
  echo The counter is $COUNTER
  let COUNTER=COUNTER+1 
done

Command Substitution/Interpolation

  • Command substitution will run the specified command and replace the command with the output from the command in the location where it is specified as part of input to some other command.
$(<command expression>)
text=$(cat alpha.txt)
`<command expression>`

File Manipulation

Delete a file if it exists.
[[ -f "$file" ]] && rm -f "$file"
  • bash_scripting.1493142215.txt.gz
  • Last modified: 2017/04/25 17:43
  • by mgupton