From 6ef6f715d7236296855868e2aed5c627b937d24f Mon Sep 17 00:00:00 2001 From: ray Date: Mon, 17 Feb 2020 20:21:31 +0000 Subject: [PATCH] initial commit --- README.md | 2 ++ install.sh | 39 +++++++++++++++++++++++++++++++++++++++ src/newsh | 14 ++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 README.md create mode 100755 install.sh create mode 100755 src/newsh diff --git a/README.md b/README.md new file mode 100644 index 0000000..e868aad --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +`install.sh` -- install all files in `./src/` to install directory (`/usr/local/bin/`). +`install.sh -u` -- uninstall all files in `./src/` from install directory. diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..4b83e32 --- /dev/null +++ b/install.sh @@ -0,0 +1,39 @@ +#!/bin/sh +_install_dir="/usr/local/bin/" +_uninstall=0 + +for _arg in "$@" ; do + if [ "$_arg" = "-u" ] || [ "$_arg" = "--uninstall" ] ; then + _uninstall=1 + else + echo "warning: unknown option." + exit 1 + fi +done + +echo "Install directory: '$_install_dir'" +echo "" + +for _file in ./src/* ; do + if [ $_uninstall -eq 0 ] ; then + echo "installing: $_file" + sudo cp "$_file" "$_install_dir" + elif [ $_uninstall -eq 1 ] ; then + _filename=$(basename "$_file") + # WARNING - need to ensure $_filename is not empty (/usrlocal/bin will be deleted) + if [ -n "$_filename" ]; then + echo "uninstalling: $_filename" + sudo rm "$_install_dir$_filename" + fi + fi +done + + +if [ $_uninstall -eq 0 ] ; then + echo "" + echo "Install complete -- uninstall with" + echo " ./install -u" +else + echo "" + echo "Uninstall complete" +fi diff --git a/src/newsh b/src/newsh new file mode 100755 index 0000000..e2312e1 --- /dev/null +++ b/src/newsh @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +if [ -f "$1" ] ; then + echo "Error: file exists: $1" + exit 1 +fi + +echo "#!/bin/sh" > "$1" +echo "" >> "$1" +echo "$2" >> "$1" + +chmod u+x "$1"