diff --git a/usr/bin/exec-terminal b/usr/bin/exec-terminal index c05767c..67b7a76 100644 --- a/usr/bin/exec-terminal +++ b/usr/bin/exec-terminal @@ -22,3 +22,16 @@ while getopts "${opts}" arg; do ;; esac done + +shift $(($OPTIND - 1)) + +initfile="$(mktemp)" +codefile="$initfile" +echo "#!/usr/bin/env bash" >"$initfile" +if [ "$EXEC_TERMINAL" != "bash" ]; then + codefile="$(mktemp)" + echo "$EXEC_TERMINAL $codefile" >>"$initfile" +fi +echo "$1" >>"$codefile" +chmod +x "$initfile" +cmd="\"$initfile\""