Changed to bash and fixed the need of escaping double quotes inside single quotes
This commit is contained in:
65
pshell
65
pshell
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
|
||||
#Check if running as e-account
|
||||
@@ -58,55 +58,34 @@ export JAVA_VER=/opt/gfa/java/openjdk-12_32
|
||||
export MAIN_CLASS=ch.psi.pshell.ui.App
|
||||
export COMMAND=
|
||||
|
||||
# Collect remaining args safely
|
||||
REMAINING_ARGS=""
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
PASS=()
|
||||
|
||||
while (($#)); do
|
||||
case $1 in
|
||||
-jvmarg=*)
|
||||
JVM_ARGS="${1#*=}"
|
||||
#echo "JVM args: $JVM_ARGS"
|
||||
;;
|
||||
-ucp=*)
|
||||
UCP="${1#*=}"
|
||||
#echo "UCP: $UCP"
|
||||
;;
|
||||
-version=*)
|
||||
export PSHELL_VER="${1#*=}"
|
||||
#echo "Using version $PSHELL_VER"
|
||||
;;
|
||||
-test)
|
||||
export PSHELL_VER="testing"
|
||||
#echo "Using testing version"
|
||||
;;
|
||||
-last)
|
||||
export PSHELL_VER="latest"
|
||||
#echo "Using latest version"
|
||||
;;
|
||||
-light)
|
||||
export VER_SUFFIX="-light"
|
||||
#echo "Using build type $VER_SUFFIX"
|
||||
;;
|
||||
-javaver=*)
|
||||
export JAVA_VER="${1#*=}"
|
||||
#echo "Using Java version $JAVA_VER"
|
||||
;;
|
||||
-command=*)
|
||||
COMMAND="${1#*=}"
|
||||
#echo "COMMAND: $COMMAND"
|
||||
;;
|
||||
|
||||
*)
|
||||
REMAINING_ARGS="$REMAINING_ARGS \"$1\""
|
||||
;;
|
||||
-jvmarg=*) JVM_ARGS="${1#*=}" ;;
|
||||
-ucp=*) UCP="${1#*=}" ;;
|
||||
-version=*) PSHELL_VER="${1#*=}" ;;
|
||||
-test) PSHELL_VER="testing" ;;
|
||||
-last) PSHELL_VER="latest" ;;
|
||||
-light) VER_SUFFIX="-light" ;;
|
||||
-javaver=*) JAVA_VER="${1#*=}" ;;
|
||||
-command=*) COMMAND="${1#*=}" ;;
|
||||
*) PASS+=("$1") ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
#echo "Remaining args: $REMAINING_ARGS"
|
||||
# Show them like before, in one line:
|
||||
printf 'Remaining args:'
|
||||
for arg in "${PASS[@]}"; do
|
||||
printf ' "%s"' "$arg"
|
||||
done
|
||||
echo
|
||||
|
||||
# Restore positional parameters cleanly
|
||||
set -- "${PASS[@]}"
|
||||
|
||||
# Final exec (safe with spaces)
|
||||
eval set -- $REMAINING_ARGS
|
||||
|
||||
|
||||
if [[ $VER_SUFFIX != "" ]] ; then
|
||||
|
||||
Reference in New Issue
Block a user