Linux には which
があります パス上の実行可能ファイルの存在を確認するコマンド:
pax> which ls ; echo $?
/bin/ls
0
pax> which no_such_executable ; echo $?
1
ご覧のとおり、リターン コード $?
を設定します。 実行可能ファイルが見つかったかどうかを簡単に確認できます。
wget http://download/url/file 2>/dev/null || curl -O http://download/url/file
command
も使用できます または type
または hash
wget/curl が存在するかどうかを確認します。ここの別のスレッド - 「Bash スクリプトからプログラムが存在するかどうかを確認する」は、プログラムが存在するかどうかを確認するために bash スクリプトで何を使用するかについて非常にうまく答えています。
私ならこうする -
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