launch.sh
正しい所有者でファイルを作成するために、別のユーザーとして自分自身を実行するスクリプトがあります。最初にスクリプトに渡された場合、この呼び出しに-xを渡したい
if [ `whoami` == "deployuser" ]; then
... bunch of commands that need files to be created as deployuser
else
echo "Respawning myself as the deployment user... #Inception"
echo "Called with: <$BASH_ARGV>, <$BASH_EXECUTION_STRING>, <$->"
sudo -u deployuser -H bash $0 "$@" # How to pass -x here if it was passed to the script initially?
fi
bashデバッグページを読みましたが、元のスクリプトがで起動されたかどうかを示す明確なオプションがないよう-x
です。
[[ $- == *x* ]]
パターンマッチングに使用する必要があります。