यदि आपने हमारे मैजिक मिरर ट्यूटोरियल का अनुसरण किया है, तो आप wget . देखेंगे कुछ फ़ाइलों को डाउनलोड करने के लिए कमांड का उपयोग किया गया था।
यह ट्यूटोरियल बताता है कि wget . का उपयोग कैसे करें , वेब से फ़ाइलें डाउनलोड करने (प्राप्त करने) के लिए एक कमांड-लाइन टूल, चाहे वह HTTP, HTTPS, FTP, या FTPS के माध्यम से हो।
लिनक्स शेल से इंटरनेट से फ़ाइलें डाउनलोड करने के लिए इसका उपयोग करें, इसे बैश स्क्रिप्ट से कॉल करें - यह सरल और बहुमुखी है और इसे एक बार शुरू करने के बाद उपयोगकर्ता के हस्तक्षेप की आवश्यकता नहीं होती है ताकि यह पृष्ठभूमि में चल सके।
सिंटैक्स
wget [OPTIONS]... [ URLS ]...
ध्यान दें कि:
- विकल्प विकल्पों की एक सूची है जिसे नीचे दी गई तालिका से एप्लिकेशन को पास किया जा सकता है, एक स्थान से अलग किया जा सकता है
- URLS डाउनलोड करने के लिए URL की एक सूची है, जिसे एक स्थान से अलग किया गया है
ये हैं wget विकल्प, सीधे दस्तावेज़ों से:
सामान्य विकल्प | |
---|---|
-o लॉगफ़ाइल | सभी संदेशों को लॉगफ़ाइल में लॉग इन करें . संदेशों को आम तौर पर मानक त्रुटि की सूचना दी जाती है। |
-a लॉगफ़ाइल | लॉगफ़ाइल में जोड़ें . यह -o जैसा ही है, केवल यह पुरानी लॉग फ़ाइल को अधिलेखित करने के बजाय लॉगफ़ाइल में जोड़ता है। अगर लॉगफाइल मौजूद नहीं है, तो एक नई फाइल बनाई जाती है। |
-q | Wget का आउटपुट बंद करें। |
-i फ़ाइल | स्थानीय या बाहरी फ़ाइल के URL पढ़ें . यदि इस फ़ंक्शन का उपयोग किया जाता है, तो कमांड लाइन पर कोई URL मौजूद नहीं होना चाहिए। |
-t संख्या | पुन:प्रयासों की संख्या को संख्या पर सेट करें । |
-c | आंशिक रूप से डाउनलोड की गई फ़ाइल प्राप्त करना जारी रखें। |
-T सेकंड | नेटवर्क टाइमआउट को सेकंड पर सेट करें सेकंड। |
-w सेकंड | निर्दिष्ट संख्या सेकंड की प्रतीक्षा करें पुनर्प्राप्ति के बीच। |
–उपयोगकर्ता=उपयोगकर्ता | HTTP या FTP प्रमाणीकरण उपयोगकर्ता नाम सेट करें। |
–पासवर्ड=पासवर्ड | HTTP या FTP प्रमाणीकरण पासवर्ड सेट करें। |
-पोस्ट-डेटा=स्ट्रिंग | GET के बजाय POST अनुरोध करें और डेटा भेजें। स्ट्रिंग प्रारूप में होना चाहिए "key1=value1&key2=value2" |
-r | पुनरावर्ती पुनर्प्राप्ति चालू करें। |
-l गहराई | पुनरावृत्ति अधिकतम गहराई स्तर गहराई निर्दिष्ट करें। डिफ़ॉल्ट अधिकतम गहराई 5 है। |
-m | मिररिंग के लिए उपयुक्त विकल्प चालू करें। यह विकल्प रिकर्सन और टाइम-स्टैम्पिंग चालू करता है, अनंत रिकर्सन गहराई सेट करता है और एफ़टीपी निर्देशिका लिस्टिंग रखता है। |
-p | यह विकल्प Wget को उन सभी फाइलों को डाउनलोड करने का कारण बनता है जो किसी दिए गए HTML पृष्ठ को ठीक से प्रदर्शित करने के लिए आवश्यक हैं। इसमें इनलाइन इमेज, साउंड और संदर्भित स्टाइलशीट जैसी चीजें शामिल हैं। |
उदाहरण
किसी HTTPS सर्वर से फ़ाइल डाउनलोड करें
एकल फ़ाइल डाउनलोड करें, मूल उपयोग:
wget https://www.example.com/file.zip
फ़ाइल डाउनलोड करना जारी रखें
अगर कोई डाउनलोड केवल आंशिक रूप से पूरा हुआ है, तो उसे डाउनलोड करना जारी रखें/फिर से शुरू करें -c . के साथ विकल्प:
wget -c https://www.example.com/file.zip
लॉग में संलग्न, फाइलों की सूची से डाउनलोड करें
यदि आपके पास डाउनलोड करने के लिए URL की सूची वाली एक टेक्स्ट फ़ाइल है, तो आप इसे सीधे wget में भेज सकते हैं और बाद में निरीक्षण के लिए परिणामों का लॉग लिख सकते हैं:
wget -a log.txt -i url-list.txt
आप लॉग फ़ाइल को लिखने के लिए -o का भी उपयोग कर सकते हैं, और यदि यह पहले से मौजूद है तो यह मौजूदा लॉग फ़ाइल को जोड़ने के बजाय अधिलेखित कर देगी।
फ़ाइल डाउनलोड करें, 5 बार चुपचाप पुनः प्रयास करें
फ़ाइल डाउनलोड करने का पुनः प्रयास करें और टर्मिनल पर प्रगति प्रिंट न करें:
wget -t 5 -q https://www.example.com/file.zip
फ़ाइलों की सूची से डाउनलोड करें, प्रत्येक डाउनलोड के बीच 6 सेकंड प्रतीक्षा करें, 12 सेकंड टाइमआउट के साथ
सर्वर लोड को कम करने के लिए डाउनलोड के बीच प्रतीक्षा करें, और अगर सर्वर 12 सेकंड के भीतर जवाब देने में विफल रहता है तो निरस्त करें:
wget -w 6 -T 12 -i url-list.txt
एक FTPS सर्वर से एक फ़ाइल डाउनलोड करें जिसके लिए एक उपयोगकर्ता नाम और पासवर्ड की आवश्यकता होती है
FTPS सर्वर से उपयोगकर्ता नाम bob . के साथ डाउनलोड करें और पासवर्ड नाव :
wget --user=bob --password=boat ftps://ftp.example.com/file.zip
पोस्ट अनुरोध वाली फ़ाइल डाउनलोड करें
डिफ़ॉल्ट GET अनुरोध के बजाय HTTP POST अनुरोध करें, और डेटा भेजें। –पोस्ट-डेटा . के साथ एक खाली स्ट्रिंग भेजी जा सकती है :
wget --post-data="postcode=2000&country=Australia" https://www.example.com/file.zip
इस उदाहरण में, हम POST डेटा के दो टुकड़े भेज रहे हैं - पोस्टकोड और देश।
यदि POST अनुरोध करते हैं, तो कर्ल अधिक बहुमुखी हो सकता है।
गहराई सीमा के साथ FTP के माध्यम से निर्देशिका को पुनरावर्ती रूप से डाउनलोड करें
पुनरावर्ती रूप से डाउनलोड करने से किसी फ़ोल्डर की सामग्री और उस फ़ोल्डर में फ़ोल्डर की सामग्री डाउनलोड हो जाएगी। इस उदाहरण में 3 की गहराई सीमा परिभाषित की गई है - जिसका अर्थ है कि यदि कोई फ़ोल्डर 3 अन्य फ़ोल्डरों में नेस्टेड है, तो उसे डाउनलोड नहीं किया जाएगा:
wget -r -l 3 ftps://ftp.example.com/path/to/folder
एफ़टीपी के माध्यम से सभी सामग्री सहित एक संपूर्ण निर्देशिका डाउनलोड करना
wget -m ftps://ftp.example.com/path/to/folder
Wget का उपयोग करके पूरे वेब पेज का क्लोन बनाना
यदि आप सभी छवियों, शैलियों और स्क्रिप्ट सहित पूरे वेबपेज को आजमाना चाहते हैं, तो आप इसका उपयोग कर सकते हैं
wget -p https://www.example.com/page.html
आपकी सफलता अलग-अलग होगी - कुछ आधुनिक वेब पेज अपने मूल निवास स्थान से बाहर निकल जाने पर वास्तव में अच्छी तरह से काम नहीं करते हैं।