From a7a89d12736f767576a3d341cd1d473a75fed823 Mon Sep 17 00:00:00 2001 From: Renaud Barate Date: Mon, 12 Jan 2015 11:59:05 +0100 Subject: [PATCH] Fix some potential errors detected with ShellCheck in SALOME shell scripts --- bin/appliskel/envd | 7 +++++-- bin/appliskel/runRemote.sh | 30 ++++++++++++++++-------------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/bin/appliskel/envd b/bin/appliskel/envd index 5efc82ec8..9901d6901 100644 --- a/bin/appliskel/envd +++ b/bin/appliskel/envd @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh # Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE # # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, @@ -21,4 +21,7 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -for i in $1/env.d/*.sh; do source ${i}; done +for i in $1/env.d/*.sh +do + . "${i}" +done diff --git a/bin/appliskel/runRemote.sh b/bin/appliskel/runRemote.sh index a64d0d67b..c1119a796 100755 --- a/bin/appliskel/runRemote.sh +++ b/bin/appliskel/runRemote.sh @@ -42,40 +42,42 @@ # $5 (or $3 if no workingdir given) and following : local command to execute, with args # --- retrieve APPLI path, relative to $HOME, set ${APPLI} -APPLI_HOME=`dirname $0` -export APPLI=`${APPLI_HOME}/getAppliPath.py` +APPLI_HOME=$(dirname "$0") +export APPLI=$("${APPLI_HOME}/getAppliPath.py") # --- set the SALOME environment (prerequisites, MODULES_ROOT_DIR...) +# Sourcing files with parameters works with bash, not with dash. This is why +# we must use bash for this script. -. ${HOME}/${APPLI}/envd ${HOME}/${APPLI} +. "${HOME}/${APPLI}/envd" "${HOME}/${APPLI}" # --- set the OMNIORB_CONFIG file and environment relative to this run of SALOME export NSHOST=$1 export NSPORT=$2 # Get (in bash) the configuration filename from (Python) ORBConfigFile return values -RETURN_VALUES=$(${KERNEL_ROOT_DIR}/bin/salome/envSalome.py python ${KERNEL_ROOT_DIR}/bin/salome/ORBConfigFile.py ${OMNIORB_USER_PATH} ${NSHOST} ${NSPORT} with_username=${USER}) -export OMNIORB_CONFIG=$(echo ${RETURN_VALUES} | cut -d' ' -f1) +RETURN_VALUES=$("${KERNEL_ROOT_DIR}/bin/salome/envSalome.py" python "${KERNEL_ROOT_DIR}/bin/salome/ORBConfigFile.py" "${OMNIORB_USER_PATH}" "${NSHOST}" "${NSPORT}" "with_username=${USER}") +export OMNIORB_CONFIG=$(echo "${RETURN_VALUES}" | cut -d' ' -f1) #go to the requested working directory if any if test "x$3" == "xWORKINGDIR"; then if test "x$4" = "x\$TEMPDIR"; then #create a temp working dir and change to it - WDIR=`mktemp -d` && { - cd $WDIR + WDIR=$(mktemp -d) && { + cd "$WDIR" } else - if test -d $4; then + if test -d "$4"; then #the dir exists, go to it - cd $4 + cd "$4" else - if test -a $4; then + if test -a "$4"; then # It's a file do nothing - echo $4 "is an existing file. Can't use it as a working directory" + echo "$4 is an existing file. Can't use it as a working directory" else #It does not exists, create it - mkdir -p $4 && { - cd $4 + mkdir -p "$4" && { + cd "$4" } fi fi @@ -90,4 +92,4 @@ fi # suppress --rcfile option because of problem on Mandriva2006 - B Secher mai 2007 #${KERNEL_ROOT_DIR}/bin/salome/envSalome.py /bin/sh --rcfile $HOME/$APPLI/.bashrc -c "$*" -${KERNEL_ROOT_DIR}/bin/salome/envSalome.py /bin/sh -c "$*" +"${KERNEL_ROOT_DIR}/bin/salome/envSalome.py" /bin/sh -c "$*" -- 2.39.2