Linux má which
příkaz, který zkontroluje existenci spustitelného souboru na vaší cestě:
pax> which ls ; echo $?
/bin/ls
0
pax> which no_such_executable ; echo $?
1
Jak vidíte, nastavuje návratový kód $?
snadno zjistit, zda byl spustitelný soubor nalezen.
wget http://download/url/file 2>/dev/null || curl -O http://download/url/file
Lze také použít command
nebo type
nebo hash
zkontrolovat, zda wget/curl existuje nebo ne. Další vlákno zde - "Zkontrolujte, zda existuje program ze skriptu Bash" velmi pěkně odpovídá, co použít ve skriptu bash ke kontrole, zda program existuje.
Udělal bych to -
if [ ! -x /usr/bin/wget ] ; then
# some extra check if wget is not installed at the usual place
command -v wget >/dev/null 2>&1 || { echo >&2 "Please install wget or set it in your path. Aborting."; exit 1; }
fi
Jak zjistit, které možnosti příkazového řádku gcc standardně předává ld?
Protokolování Pythonu - zkontrolovat umístění souborů protokolu?