So I'm writing this shell script and i want to run this command within the shell script:
Code:
/usr/bin/zenity --question --title "Blocked: $*" --text "The file '$exe' is not marked as executable. If this was downloaded or copied from an untrusted source, it may be dangerous to run. For more details, read about the <a href=\"https://wiki.ubuntu.com/Security/ExecutableBit\">executable bit</a>. HOWEVER, you can choose to override the security protections and open this potentially unsafe file. Execute manual override?"
Then, I want it to do something if that command returns 0, and something else if it returns 1.
What I'm trying to do here is rewrite Ubuntu's infamous cautious-launcher so that it supports manual override. This is because some filesystems (i.e. NTFS) don't support marking things executable. Full code of what I have right now:
Code:
#!/bin/bash
# For use with .desktop files and MIME handlers so that the Ubuntu Policy
# can be followed: programs cannot be executed when they lack the execute bit.
# https://wiki.ubuntu.com/SecurityTeam/Policies#Execute-Permission%20Bit%20Required
exe="$1"
shift || true
if [ -n "$exe" ] && [ ! -x "$exe" ] && \
[ "${exe:0:5}" != "/usr/" ] && [ "${exe:0:5}" != "/opt/" ]
then
if [ -n "$DISPLAY" ] && [ -x /usr/bin/zenity ]; then
if
/usr/bin/zenity --question --title "Blocked: $*" --text "The file '$exe' is not marked as executable. If this was downloaded or copied from an untrusted source, it may be dangerous to run. For more details, read about the <a href=\"https://wiki.ubuntu.com/Security/ExecutableBit\">executable bit</a>. HOWEVER, you can choose to override the security protections and open this potentially unsafe file. Execute manual override?"
then
echo "aborting"
else
exec "$@" "$exe"
fi
else
echo "$*: '$exe' is not executable. Aborting." >&2
fi
exit 1
fi
exec "$@" "$exe"