2012-02-08 04:23:48 -05:00
|
|
|
# Shebang. Executing bash via /usr/bin/env makes scripts more portable.
|
2015-03-02 05:12:52 -05:00
|
|
|
snippet #!
|
|
|
|
#!/usr/bin/env bash
|
2013-06-20 17:39:31 -04:00
|
|
|
|
2011-06-20 13:40:28 -04:00
|
|
|
snippet if
|
|
|
|
if [[ ${1:condition} ]]; then
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-20 13:40:28 -04:00
|
|
|
fi
|
|
|
|
snippet elif
|
|
|
|
elif [[ ${1:condition} ]]; then
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-20 13:40:28 -04:00
|
|
|
snippet for
|
|
|
|
for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-20 13:40:28 -04:00
|
|
|
done
|
2011-06-25 23:21:17 -04:00
|
|
|
snippet fori
|
|
|
|
for ${1:needle} in ${2:haystack} ; do
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-25 23:21:17 -04:00
|
|
|
done
|
2011-06-20 13:40:28 -04:00
|
|
|
snippet wh
|
|
|
|
while [[ ${1:condition} ]]; do
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-20 13:40:28 -04:00
|
|
|
done
|
|
|
|
snippet until
|
|
|
|
until [[ ${1:condition} ]]; do
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#statements}
|
2011-06-20 13:40:28 -04:00
|
|
|
done
|
|
|
|
snippet case
|
|
|
|
case ${1:word} in
|
|
|
|
${2:pattern})
|
2013-07-25 17:17:32 -04:00
|
|
|
${0};;
|
2011-06-20 13:40:28 -04:00
|
|
|
esac
|
2013-06-20 17:39:31 -04:00
|
|
|
snippet go
|
|
|
|
while getopts '${1:o}' ${2:opts}
|
|
|
|
do
|
2011-06-25 23:21:17 -04:00
|
|
|
case $$2 in
|
|
|
|
${3:o0})
|
2013-07-25 17:17:32 -04:00
|
|
|
${0:#staments};;
|
2011-06-25 23:21:17 -04:00
|
|
|
esac
|
|
|
|
done
|
2012-02-08 09:23:49 -05:00
|
|
|
# Set SCRIPT_DIR variable to directory script is located.
|
|
|
|
snippet sdir
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
2012-12-07 09:11:55 -05:00
|
|
|
# getopt
|
|
|
|
snippet getopt
|
|
|
|
__ScriptVersion="${1:version}"
|
|
|
|
|
|
|
|
#=== FUNCTION ================================================================
|
|
|
|
# NAME: usage
|
|
|
|
# DESCRIPTION: Display usage information.
|
|
|
|
#===============================================================================
|
|
|
|
function usage ()
|
|
|
|
{
|
2015-02-28 17:28:34 -05:00
|
|
|
echo "Usage : $${0:0} [options] [--]
|
2012-12-07 09:11:55 -05:00
|
|
|
|
2015-02-28 16:50:06 -05:00
|
|
|
Options:
|
|
|
|
-h|help Display this message
|
|
|
|
-v|version Display script version"
|
2012-12-07 09:11:55 -05:00
|
|
|
|
|
|
|
} # ---------- end of function usage ----------
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------
|
|
|
|
# Handle command line arguments
|
|
|
|
#-----------------------------------------------------------------------
|
|
|
|
|
|
|
|
while getopts ":hv" opt
|
|
|
|
do
|
|
|
|
case $opt in
|
|
|
|
|
|
|
|
h|help ) usage; exit 0 ;;
|
|
|
|
|
|
|
|
v|version ) echo "$${0:0} -- Version $__ScriptVersion"; exit 0 ;;
|
|
|
|
|
2015-02-28 16:50:06 -05:00
|
|
|
* ) echo -e "\n Option does not exist : $OPTARG\n"
|
2012-12-07 09:11:55 -05:00
|
|
|
usage; exit 1 ;;
|
|
|
|
|
|
|
|
esac # --- end of case ---
|
|
|
|
done
|
|
|
|
shift $(($OPTIND-1))
|
2013-03-17 15:46:38 -04:00
|
|
|
snippet root
|
2014-05-22 09:09:58 -04:00
|
|
|
if [ \$(id -u) -ne 0 ]; then exec sudo \$0; fi
|
2013-09-12 23:31:06 -04:00
|
|
|
snippet fun
|
2015-03-02 05:12:52 -05:00
|
|
|
${1:function_name}() {
|
|
|
|
${0:#function_body}
|
|
|
|
}
|
|
|
|
snippet ffun
|
2013-09-12 23:31:06 -04:00
|
|
|
function ${1:function_name}() {
|
|
|
|
${0:#function_body}
|
|
|
|
}
|