diff options
| author | Vito G. Graffagnino <vito@graffagnino.xyz> | 2022-08-28 12:24:01 +0100 |
|---|---|---|
| committer | Vito G. Graffagnino <vito@graffagnino.xyz> | 2022-08-28 12:24:01 +0100 |
| commit | 823302458ec6c53455a3f34674415c43ce6a3187 (patch) | |
| tree | 92168b44b01f5b2236b7cdf331e227c4790431ee /snippets/sh.snippets | |
| parent | 9ea6111717518625cbd28a020493ec06610ff01e (diff) | |
Added snippets directory
Diffstat (limited to 'snippets/sh.snippets')
| -rw-r--r-- | snippets/sh.snippets | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/snippets/sh.snippets b/snippets/sh.snippets new file mode 100644 index 0000000..b92ae95 --- /dev/null +++ b/snippets/sh.snippets @@ -0,0 +1,106 @@ +# Shebang. Executing bash via /usr/bin/env makes scripts more portable. +snippet #! + #!/usr/bin/env sh + +snippet s#! + #!/usr/bin/env sh + set -eu + +snippet safe + set -eu + +snippet bash + #!/usr/bin/env bash + +snippet sbash + #!/usr/bin/env bash + set -euo pipefail + IFS=$'\n\t' + +snippet if + if [[ ${1:condition} ]]; then + ${0:${VISUAL}} + fi +snippet elif + elif [[ ${1:condition} ]]; then + ${0:${VISUAL}} +snippet for + for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do + ${0:${VISUAL}} + done +snippet fori + for ${1:needle} in ${2:haystack} ; do + ${0:${VISUAL}} + done +snippet wh + while [[ ${1:condition} ]]; do + ${0:${VISUAL}} + done +snippet until + until [[ ${1:condition} ]]; do + ${0:${VISUAL}} + done +snippet case + case ${1:word} in + ${2:pattern}) + ${0};; + esac +snippet go + while getopts '${1:o}' ${2:opts} + do + case $$2 in + ${3:o0}) + ${0:#staments};; + esac + done +# Set SCRIPT_DIR variable to directory script is located. +snippet sdir + SCRIPT_DIR="\$( cd "\$( dirname "\${BASH_SOURCE[0]}" )" && pwd )" +# getopt +snippet getopt + __ScriptVersion="${1:version}" + + #=== FUNCTION ================================================================ + # NAME: usage + # DESCRIPTION: Display usage information. + #=============================================================================== + function usage () + { + echo "Usage : \$${0:0} [options] [--] + + Options: + -h|help Display this message + -v|version Display script version" + + } # ---------- 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 ;; + + * ) echo -e "\\n Option does not exist : \$OPTARG\\n" + usage; exit 1 ;; + + esac # --- end of case --- + done + shift \$(($OPTIND-1)) +snippet root + if [ \$(id -u) -ne 0 ]; then exec sudo \$0; fi + +snippet fun-sh + ${1:function_name}() { + ${0:#function_body} + } + +snippet fun + function ${1:function_name}() { + ${0:#function_body} + } |
