Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Bash प्रोग्रामिंग

Linux wget मास्टर करें: व्यावहारिक उदाहरणों के साथ व्यापक गाइड

यदि आपने हमारे Magic Mirror ट्यूटोरियल का पालन किया है, तो आपने कुछ फ़ाइलें डाउनलोड करने के लिए wget कमांड का उपयोग होते देखा होगा।

यह ट्यूटोरियल बताता है कि wget का उपयोग कैसे करें, जो वेब से फ़ाइलें डाउनलोड (प्राप्त) करने के लिए एक कमांड-लाइन टूल है, चाहे वह HTTP, HTTPS, FTP, या FTPS के माध्यम से हो।

इसे Linux शेल से इंटरनेट से फ़ाइलें डाउनलोड करने के लिए उपयोग करें, इसे Bash स्क्रिप्ट से कॉल करें – यह सरल और बहुमुखी है और एक बार शुरू होने पर उपयोगकर्ता हस्तक्षेप की आवश्यकता नहीं होती है ताकि यह पृष्ठभूमि में चल सके।

सिंटैक्स

wget [OPTIONS]... [ URLS ]...

ध्यान दें कि:

  • OPTIONS नीचे दी गई तालिका से पास किए जा सकने वाले विकल्पों की एक सूची है, जो स्पेस से अलग किए गए हैं
  • URLS डाउनलोड करने के लिए URL की एक सूची है, जो स्पेस से अलग की गई है

यहां डॉक्स से wget विकल्प दिए गए हैं:

सामान्य विकल्प
-o logfile सभी संदेशों को logfile में लॉग करें। संदेश आमतौर पर मानक त्रुटि पर रिपोर्ट किए जाते हैं।
-a logfile logfile में जोड़ें। यह -o के समान है, केवल यह पुरानी लॉग फ़ाइल को ओवरराइट करने के बजाय logfile में जोड़ता है। यदि logfile मौजूद नहीं है, तो एक नई फ़ाइल बनाई जाती है।
-q Wget के आउटपुट को बंद करें।
-i file स्थानीय या बाहरी file से URL पढ़ें। यदि इस फ़ंक्शन का उपयोग किया जाता है, तो कमांड लाइन पर कोई URL मौजूद होने की आवश्यकता नहीं है।
-t number पुनः प्रयासों की संख्या को number पर सेट करें।
-c आंशिक रूप से डाउनलोड की गई फ़ाइल को जारी रखें।
-T seconds नेटवर्क टाइमआउट को seconds सेकंड पर सेट करें।
-w seconds पुनर्प्राप्ति के बीच निर्दिष्ट संख्या के seconds प्रतीक्षा करें।
–user=user HTTP या FTP प्रमाणीकरण उपयोगकर्ता नाम सेट करें।
–password=password HTTP या FTP प्रमाणीकरण पासवर्ड सेट करें।
–post-data=string GET के बजाय POST अनुरोध करें और डेटा भेजें। string "key1=value1&key2=value2" प्रारूप में होना चाहिए
-r पुनरावर्ती पुनर्प्राप्ति चालू करें।
-l depth पुनरावर्तन अधिकतम गहराई स्तर गहराई निर्दिष्ट करें। डिफ़ॉल्ट अधिकतम गहराई 5 है।
-m मिररिंग के लिए उपयुक्त विकल्प चालू करें। यह विकल्प पुनरावर्तन और टाइम-स्टैम्पिंग चालू करता है, अनंत पुनरावर्तन गहराई सेट करता है और FTP डायरेक्टरी लिस्टिंग रखता है।
-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 सर्वर से फ़ाइल डाउनलोड करें

उपयोगकर्ता नाम bob और पासवर्ड boat के साथ FTPS सर्वर से डाउनलोड करें:

wget --user=bob --password=boat ftps://ftp.example.com/file.zip

POST अनुरोध के साथ फ़ाइल डाउनलोड करें

डिफ़ॉल्ट GET अनुरोध के बजाय HTTP POST अनुरोध करें, और डेटा भेजें। –post-data के साथ एक खाली स्ट्रिंग भेजी जा सकती है:

wget --post-data="postcode=2000&country=Australia" https://www.example.com/file.zip

इस उदाहरण में, हम POST डेटा के दो टुकड़े भेज रहे हैं – पोस्टकोड और देश।

यदि POST अनुरोध कर रहे हैं, तो cURL अधिक बहुमुखी हो सकता है।

गहराई सीमा के साथ FTP के माध्यम से डायरेक्टरी को पुनरावर्ती रूप से डाउनलोड करें

पुनरावर्ती रूप से डाउनलोड करने से एक फ़ोल्डर की सामग्री और उस फ़ोल्डर में फ़ोल्डर्स की सामग्री डाउनलोड हो जाएगी। इस उदाहरण में 3 की गहराई सीमा परिभाषित की गई है – अर्थात यदि कोई फ़ोल्डर 3 अन्य फ़ोल्डर्स के भीतर नेस्टेड है, तो उसे डाउनलोड नहीं किया जाएगा:

wget -r -l 3 ftps://ftp.example.com/path/to/folder

FTP के माध्यम से सभी सामग्री सहित पूरी डायरेक्टरी डाउनलोड करना

wget -m ftps://ftp.example.com/path/to/folder

Wget का उपयोग करके पूरे वेब पेज को क्लोन करना

यदि आप किसी पूरे वेबपेज को – सभी इमेज, स्टाइल और स्क्रिप्ट सहित – प्राप्त करने का प्रयास करना चाहते हैं, तो आप उपयोग कर सकते हैं

wget -p https://www.example.com/page.html

आपकी सफलता अलग-अलग होगी – कुछ आधुनिक वेब पेज अपने मूल वातावरण से बाहर निकाले जाने पर वास्तव में अच्छी तरह से काम नहीं करते हैं।


  1. लिनक्स में Sudo लिनक्स में Sudo

    यह कैसे काम करता है कुछ लिनक्स एप्लिकेशन को चलाने के लिए उन्नत विशेषाधिकारों की आवश्यकता होती है। सुपरयूजर (रूट) पर स्विच करने के लिए su कमांड का उपयोग करें, या आप इसके बजाय sudo कमांड का उपयोग कर सकते हैं। हालांकि वे अलग-अलग काम करते हैं, sudo कमांड विंडोज या मैकओएस में आपके द्वारा कभी-कभी देखे जा

  1. Linux पर सॉफ़्टवेयर सुरक्षित रूप से डाउनलोड करने के 5 तरीके Linux पर सॉफ़्टवेयर सुरक्षित रूप से डाउनलोड करने के 5 तरीके

    यह एक आम गलतफहमी है कि Linux पर कोई वायरस नहीं हैं। तथ्य यह है: वे मौजूद हैं। भले ही आपके प्रोग्राम फ़ाइलों के माध्यम से जाकर संक्रमित फ़ाइल ढूंढना संभव है, लेकिन इससे पहले कि आपको एहसास हो कि आपके Linux सिस्टम से समझौता किया गया है, इसमें महीनों लग सकते हैं। भरोसा एक नाजुक चीज है, और आपको इसे आसानी

  1. Linux में Find कमांड का उपयोग करके फ़ाइल ढूंढें Linux में Find कमांड का उपयोग करके फ़ाइल ढूंढें

    Linux find कमांड Linux सिस्टम में सबसे महत्वपूर्ण और आसान कमांड में से एक है। यह, जैसा कि नाम से पता चलता है, आपके द्वारा सेट की गई बहुत अधिक शर्तों और चरों के आधार पर आपके Linux PC पर फ़ाइलें ढूंढ सकता है। आप find कमांड का उपयोग करके अनुमतियों, उपयोगकर्ताओं, समूहों, फ़ाइल प्रकार, तिथि, आकार और अन्य