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* ]]
패턴 일치 에 사용해야 합니다.