From 017536123a5d334759ed54aff610b22a8d6c8254 Mon Sep 17 00:00:00 2001 From: Ze Libertine Gamer Date: Thu, 3 Nov 2016 07:02:05 -0700 Subject: Improve error handling in shell scripts --- scripts/dupe-finder.sh | 7 ++++++- scripts/helpers.sh | 7 ++++++- scripts/system-search.sh | 7 ++++++- scripts/updater.sh | 5 +++++ 4 files changed, 23 insertions(+), 3 deletions(-) (limited to 'scripts') 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 -- cgit v1.2.3-54-g00ecf