summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZe Libertine Gamer <zlg@zlg.space>2016-11-03 07:02:05 -0700
committerZe Libertine Gamer <zlg@zlg.space>2016-11-03 07:02:05 -0700
commit017536123a5d334759ed54aff610b22a8d6c8254 (patch)
tree416188c268a9f1621fa9ed183139fded80f837d7
parentCorrect run_again, add recursion (diff)
downloadvgstash-017536123a5d334759ed54aff610b22a8d6c8254.tar.gz
vgstash-017536123a5d334759ed54aff610b22a8d6c8254.tar.bz2
vgstash-017536123a5d334759ed54aff610b22a8d6c8254.tar.xz
vgstash-017536123a5d334759ed54aff610b22a8d6c8254.zip
Improve error handling in shell scripts
Diffstat (limited to '')
-rwxr-xr-xscripts/dupe-finder.sh7
-rw-r--r--scripts/helpers.sh7
-rwxr-xr-xscripts/system-search.sh7
-rwxr-xr-xscripts/updater.sh5
4 files changed, 23 insertions, 3 deletions
diff --git a/scripts/dupe-finder.sh b/scripts/dupe-finder.sh
index dec0d68..93d84c9 100755
--- a/scripts/dupe-finder.sh
+++ b/scripts/dupe-finder.sh
@@ -1,7 +1,12 @@
-#!/bin/bash
+#!/usr/bin/env bash
# dupe-finder.sh: Output duplicate games in your database
+# Set options for improved robustness
+set -o errexit
+set -o pipefail
+set -o nounset
+
# We're setting the envvar here to enforce the -w argument to uniq
result=$(VGSTASH_TABLE_WIDTH=80 vgstash list | uniq -D -f 2 -w 58)
if [[ -n $result ]]; then
diff --git a/scripts/helpers.sh b/scripts/helpers.sh
index 36320a1..f46e3f4 100644
--- a/scripts/helpers.sh
+++ b/scripts/helpers.sh
@@ -1,8 +1,13 @@
-#!/bin/bash
+#!/usr/bin/env bash
# This is a set of helper bash functions that are too small for their own file,
# but useful enough to be worth `source`ing in your bashrc.
+# Set options for improved robustness
+set -o errexit
+set -o pipefail
+set -o nounset
+
# Reports how many physical games you own
function vgphys() {
# Note: This assumes the system has an asterisk, "VC", or "Steam" in its name
diff --git a/scripts/system-search.sh b/scripts/system-search.sh
index 329ead9..f1a1aad 100755
--- a/scripts/system-search.sh
+++ b/scripts/system-search.sh
@@ -1,10 +1,15 @@
-#!/bin/bash
+#!/usr/bin/env bash
# system-search.sh: List all games from a specific system
# Accepts either one argument (the system name), or the filter to send
# to vgstash and then the system name.
+# Set options for improved robustness
+set -o errexit
+set -o pipefail
+set -o nounset
+
show_help() {
cat <<-FOOBAR
system-search.sh [filter] SYSTEM
diff --git a/scripts/updater.sh b/scripts/updater.sh
index 4197246..cdf78a0 100755
--- a/scripts/updater.sh
+++ b/scripts/updater.sh
@@ -4,6 +4,11 @@
# TODO: Refactor into multiple functions to improve error-handling.
+# Set options for improved robustness
+set -o errexit
+set -o pipefail
+set -o nounset
+
# Color escapes we'll use
norm=""
BG="" # Green