Bash-confirm-binaries

From I Will Fear No Evil
Revision as of 16:33, 23 March 2023 by Chubbard (talk | contribs)
Jump to navigation Jump to search

Simple function to confirm binaries exist before running scripts

#===  FUNCTION  ================================================================
#          NAME:  verify_deps
#   DESCRIPTION:  Check that all binary files are available to be used
#    PARAMETERS:  None.  This is standalone.  Changes occur on case by case
#       RETURNS:  none
#===============================================================================
verify_deps() {
# needed="xmllint curl w3m snmptrap cut egrep expr"
needed="ansible ansible-playbook grep sed echo tee"
for i in `echo $needed`
do
  type $i >/dev/null 2>&1
  if [ $? -eq 1 ]; then
    echo "Status WARNING - missing manditory component: $i"; exit 1
  fi
done
echo "Confirmed: all binary files necessary have been found"
}

If used with abnormal binaries not in your path

#===  FUNCTION  ================================================================
#          NAME:  verify_deps
#   DESCRIPTION:  Check that all binary files are available to be used
#    PARAMETERS:  None.  This is standalone.  Changes occur on case by case
#       RETURNS:  none
#===============================================================================
verify_deps() {
# needed="xmllint curl w3m snmptrap cut egrep expr"
needed="/foo/bar/baz /barf/damn/gasp"
for i in `echo $needed`
do
  stat $i | grep -q "File:"
  if [ $? -eq 1 ]; then
    echo "Status WARNING - missing mandatory component: $i"; exit 1
  fi
done
echo "Confirmed: all binary files necessary have been found"
}