#!/bin/bash #/ NAME #/ stub-prepare -- prepares a new stub #/ #/ SYNOPSIS #/ stub prepare # figure out the project root under which bin, lib live shome="$(cd -P -- "$(dirname -- "$BASH_SOURCE")/.." && pwd -P)" # load a jason bourne library source "$shome/libexec/_treadstone" # entry point function main { if [[ "$#" = 0 ]]; then logger_fatal "missing new command name" exit 1 fi local dollar='$' local nm_command="$1"; shift ln -nfsv stub "$shome/bin/$nm_command" cp "$0" "$shome/libexec/$nm_command" chmod 755 "$shome/libexec/$nm_command" logger_info "$nm_command is stubbed at bin/$nm_command" logger_info "edit libexec/$nm_command for the actual script" } require 'sub' "$BASH_SOURCE" "$@"