私は、URLが存在する場合(200を返す)、trueまたはfalseと評価される単純なシェル(+カール)チェックを探しています。URLがシェルにあり、おそらくカールしているかどうかを確認するには?
36
A
答えて
69
--fail
を使用すると、失敗した要求に対して終了ステータスが0以外になります。 --head
を使用すると、ファイルの内容をダウンロードすることはありません。なぜなら、このチェックのためにファイルの内容をダウンロードする必要がないからです。 --silent
を使用すると、チェック自体によってステータスまたはエラーが発生することはありません。
if curl --output /dev/null --silent --head --fail "$url"; then
echo "URL exists: $url"
else
echo "URL does not exist: $url"
fi
サーバーがHEAD要求を拒否した場合、代替は、ファイルの最初のバイトだけを要求することです:
if curl --output /dev/null --silent --fail -r 0-0 "$url"; then
13
私はwgetのはCURLよりも、このためのより良いツールであることがわかりました。覚えておくオプションが少なくなり、実際にbashの真理値をチェックして、デフォルトで成功したかどうかを確認することができます。
if wget --spider http://google.com 2>/dev/null; then
echo "File exists"
else
echo "File does not exist"
fi
--spider
オプションは、Wgetはそれをダウンロードするのではなく、ファイルをチェックし、2> /dev/null
沈黙のwgetを標準エラー出力になります。
関連する問題
- 1. プッシュ通知が簡単で、おそらくサーバーがあるかどうか確認してください。
- 2. fanfiction.netにURLがあるか確認してください
- 3. サービスワーカーキャッシュにURLが存在するかどうか確認してください。
- 4. URLに男性があるかどうかを確認して、女性に置き換えてください
- 5. アセンブリの身元を確認しますか?おそらくそれは強い名前であろうか?
- 6. OSMBonusPack:GeoPointがポリゴン内にあるかどうかを確認してください
- 7. ファイルが(サブ)ディレクトリにあるかどうかを確認してください
- 8. クライアントをカールで確認する方法はありますか?
- 9. URLが画像であるかどうかを確認するにはどうすればよいですか?
- 10. HtmlElementにディレクティブがあるかどうか確認してください
- 11. IPアドレスがネットワーク内にあるかどうか確認してください
- 12. サブモデルのデータがViewModelにあるかどうか確認してください
- 13. 要素がclientHeightにあるかどうか確認してください
- 14. ポイントがビューポート内にあるかどうか確認してください
- 15. Haskell:IntがIntのリストにあるかどうか確認してください
- 16. ラベルがグリッドマネージャにあるかどうか確認してください
- 17. Python:値がHTMLテーブルにあるかどうか確認してください
- 18. URLが既に開いているかどうかを確認する方法
- 19. Bash:さらにロジックがあるPIDが存在するかどうかを確認してください
- 20. イメージへのURLがアップしていて、Pythonに存在するかどうか確認してください。
- 21. ファイルがKORNシェルに存在するかどうか確認してください
- 22. アプリケーションがデスクトップショートカットから起動しているかどうかを確認する方法はありますか?
- 23. URLに変数が含まれているかどうかを確認する
- 24. URLがパターンに合っているかどうかを確認するJavaメソッド
- 25. jQuery:コンテンツにURLがあるかどうかを確認する方法
- 26. 認証されたユーザーがURLにアクセスできるかどうかを確認してください
- 27. UITextViewにurl(ブール値)があるかどうかを確認するか、URLを抽出します
- 28. Androidの場合GIFがURLにあるか確認してください
- 29. ユーザーにURLが割り当てられているかどうかを確認するにはどうすればよいですか?
- 30. ユーザがdjango_dbであるかどうかを確認してください
ヘッダーの標準出力への印刷を抑制する '-o/dev/null'をインクルードしてください。 –
@ShawnChinよろしくお願い致します。 –
素晴らしい...それはうまくいきます。ありがとうございます –