From c3d8da0e89d3f2213933ff85dc0cca7d829442ed Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Thu, 27 Sep 2012 14:42:10 -0400 Subject: Initial commit --- jh.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 jh.sh (limited to 'jh.sh') diff --git a/jh.sh b/jh.sh new file mode 100644 index 0000000..a7c25a9 --- /dev/null +++ b/jh.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +if [[ -z "$jh_cmd" ]]; then + export jh_cmd=$0 +fi +export jh_short=${jh_cmd##*/} + +if [[ -z "$JH_PATH" ]]; then + export JH_PATH=/usr/share/jh +fi + +usage() { + cmd="${1-$0}" + file="$JH_PATH/jh-$cmd.help.txt" + if [[ -f "$JH_PATH/jh-$cmd.help.txt" ]]; then + sed "s|@cmd@|$jh_short|g" "$file" >> /dev/stderr + else + echo "$jh_short: Cannot find help file for '$cmd'" >> /dev/stderr + fi +} + +run() { + if [[ $# < 1 ]]; then + usage '' + exit 1; + fi + cmd=$1 + shift + + file="$JH_PATH/jh-$cmd" + if [[ -x "$file" ]]; then + "$file" "$@" + exit $? + else + echo "$jh_short: Cannot find command '$cmd'" >> /dev/stderr + fi +} + +[[ "$jh_cmd" == "$0" ]] && run "$@" -- cgit v1.2.3