[Linux] Bashでwgetの戻り値をチェックする

  • このエントリーをはてなブックマークに追加
  • LINEで送る

小ネタです。
シェルスクリプトを書いている際にwgetで正常にファイルをダウンロードできた場合のみ処理を継続したい場合には次のようなコードを書きます。

#!/bin/bash

wget 'https://example.com/foo.zip'

if [ $? -ne 0 ]; then
  echo "[ERROR] 正常にダウンロードできませんでした"
  exit 1
fi
  • $?は直前のコマンドの実行結果が自動的に入ります。
  • 比較演算子の-nenot equalの略で、値が等しくない場合に使用します。
- Sponsored Link -

ステータスコード一覧

Linuxのコマンドは大抵そうなのですが、0は成功、0以外が何らかのエラーとなります。wgetもこのルールに従っています。

説明
0No problems occurred.
1Generic error code.
2Parse error—for instance, when parsing command-line options, the ‘.wgetrc’ or ‘.netrc’…
3File I/O error.
4Network failure.
5SSL verification failure.
6Username/password authentication failure.
7Protocol errors.
8Server issued an error response.

詳細は公式ドキュメントを参照ください。

参考ページ

このブログを応援する

お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。

PayPal(ペイパル)
PayPalで300円支払う
※金額は任意で変更できます。
※100円でも泣いて喜びますw
※住所の入力欄が現れた場合は「no needed」を選択ください
これまでのご協力者さま
- Sponsored Link -

ご質問やリクエストなどお気軽に。メールアドレスの入力は任意です。書き込みが反映されるまで時間がかかります。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください