WGET ينشئ ملف الإخراج حتى عند عدم وجود الصفحة

StackOverflow https://stackoverflow.com/questions/1127911

  •  13-09-2019
  •  | 
  •  

سؤال

من الممكن منع إتاج عن إجراء ملف إخراج عندما يكون هناك خطأ مثل 404.

عندما أركض

wget -O my.html http: //sdfsdfdsf.sdfds.

http: //sdfsdfdsf.sdfds. غير موجود ولكن wget لا يزال يخلق my.html


أنا جعل النصي باش وتريد التأكد من توقفه إذا لم تتمكن من الحصول على ملف صالح.

هل كانت مفيدة؟

المحلول

إرجاع إرجاع استجابة غير صفرية للردود غير 200 (يبدو).

عملت نموذج التعليمات البرمجية هذا معي مع GNU WGE:

#!/bin/sh

wget -O my.html http://sdfsdfdsf.sdfds

if [ "$?" -ne "0" ]; then
    echo "ERROR"
fi

هنا مزيد من المعلومات حول $? من عند هنا.

$؟ يتم إعطاء حالة الخروج من الأمر الأخير الذي تم تنفيذه كسلسلة عشرية. عند اكتمال الأمر بنجاح، فإنه بإرجاع حالة الخروج من 0 (صفر)، وإلا فإنه بإرجاع حالة خروج غير صفرية.

نصائح أخرى

ربما يمكنك استخدام Curl (1) بدلا من ذلك:

curl -s -f -o my.html http://sdfsdfdsf.sdfds
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top