Linux シェルスクリプトに関しては、以下があります。
verifyIfFileExists(){
...
returns 0 # if the file exists
...
returns 1 # if the does not exist
}
...
something(){
verifyIfFileExists
resultVerification=$?
if [[ $resultVerification -eq 0 ]]; then
...
else
...
fi
...
}
上記のコードは期待どおりに機能します。可能かどうか、メソッドを呼び出して文で評価する方法を知りたいです。宣言をif
避けてくださいresultVerification=$?
。次のようになります。
something(){
verifyIfFileExists
if [[ $(verifyIfFileExists) -eq 0 ]]; then
...
else
...
fi
ベストアンサー1
もし注文する
成功すればcommand
あなたの場合、ステータス0で終了します。
if verifyIfFileExists; then
...
else
...
fi
[
それ[[
自体は、引数として与えられた式の評価に従って0または1を返すコマンドです。だから
if [[ ...
通常のインスタンスです。
もし注文する上記のように。
後で使用したい場合は、終了状態を別の変数に保存すると便利です。
... run a command
result=$?
printf "Command foo exited with result %s.\n" "$result"
if [[ "$result" -eq 0 ]]; then
...
fi
必要ない場合
command
if [[ "$?" -eq 0 ]]; then
次のように書き換えることができます。
if command; then
読みやすくなると思います。関数にその名前がある場合は特にそうです。例えば
if fileExists; then
また、見ることができますシェルチェック SC2181より多くのトラップがリストされています。