मैं कर्ल कमांड के साथ ज़िप फ़ाइल कैसे डाउनलोड कर सकता हूं? मैंने कोशिश की curl -sO
, लेकिन त्रुटि हुई। मैं पते से जिप फाइल डाउनलोड करना चाहता हूं:
http://github.com/ziyaddin/xampp/archive/master.zip
लेकिन नहीं कर सकते। मुझे क्या लिखना चाहिए?
मैं कर्ल कमांड के साथ ज़िप फ़ाइल कैसे डाउनलोड कर सकता हूं? मैंने कोशिश की curl -sO
, लेकिन त्रुटि हुई। मैं पते से जिप फाइल डाउनलोड करना चाहता हूं:
http://github.com/ziyaddin/xampp/archive/master.zip
लेकिन नहीं कर सकते। मुझे क्या लिखना चाहिए?
जवाबों:
कर्ल के बजाय विग की कोशिश करें: wget http://github.com/ziyaddin/xampp/archive/master.zip
wget
इसके बजाय क्यों curl
?
unzip
डाउनलोड की गई फ़ाइल को जारी करने में एक त्रुटि थी curl
, और इसके साथ ठीक काम कियाwget
आप उपयोग कर सकते हैं:
curl https://github.com/ziyaddin/xampp/archive/master.zip -O -J -L
के रूप में बचाता है: xampp-cli-master.zip
-L
मामले में उपयोग एक पुनर्निर्देशित पाया जाता है।-O
दूरस्थ फ़ाइल नाम के लिए उपयोग ( master.zip
)-J
(उपयोग के साथ )-O
xampp-cli-master.zip
या -o
अपना खुद का नाम बनाने के लिए उपयोग करें:
curl https://github.com/ziyaddin/xampp/archive/master.zip -L -o MyFilename.zip
के रूप में बचाता है: MyFilename.zip
नोट: (GitHub SSL का उपयोग करता है - उपयोग https://
)
आप WGET के समान काम करने की अनुमति देने के लिए एक curlrc
कॉन्फ़िगर फ़ाइल या अन्य उपनाम CURL कमांड का उपयोग curl -O -L
कर सकते हैं।
परामर्श: https://curl.haxx.se/docs/manpage.html#OPTIONS (देखें: -O , -J , -L , -o )
-J विकल्प के साथ CURL का उपयोग करने की चेतावनी पर ध्यान दें:
प्रदान किए गए फ़ाइल नाम में%-परिणाम (अभी तक) को डीकोड करने का कोई प्रयास नहीं है, इसलिए यह विकल्प आपको अप्रत्याशित फ़ाइल नामों के साथ प्रदान कर सकता है।
चेतावनी : विशेष रूप से विंडोज पर इस विकल्प का विवेकपूर्ण उपयोग करें। एक दुष्ट सर्वर आपको एक DLL या अन्य फ़ाइल का नाम भेज सकता है जो संभवतः विंडोज या किसी तीसरे पक्ष के सॉफ़्टवेयर द्वारा स्वचालित रूप से लोड की जा सकती है।
यदि आप wget [option]... [URL]...
इसके बजाय फ़ाइल का उपयोग डाउनलोड करना चाहते हैं ।
विकल्पों के संबंध में अधिक जानकारी के लिए, इसे अपने टर्मिनल में लिखें: man wget
आप उद्देश्य के लिए:
wget http://github.com/ziyaddin/xampp/archive/master.zip
ध्यान दें कि .zip फ़ाइल आपके द्वारा वर्तमान निर्देशिका में सहेजी जाएगी।
wget
अधिक उपयोग करने के फायदों के बारे में बताना उपयोगी होगा curl
। किसी के लिए भी दोनों के बीच के मतभेदों को यहां देखें ।
curl
जो wget
एक छोटी भूमिका में भी योगदान देता है । एक चमक चूक (मेरे एक समय की छोटी परियोजना के आधार पर) यह है कि विग कर्ल की तुलना में 10 गुना तेज है (<2 सेकंड बनाम 12 सेकंड) सूर्योदय और सूर्यास्त के समय को पुनः प्राप्त करनाhttps://www.timeanddate.com
GitHub (या कोई अन्य साइट जो रीडायरेक्ट बनाती है) का उपयोग करने के लिए फाइल डाउनलोड करने के लिए curl
, आपको पास होना चाहिए -L
(रीडायरेक्ट का पालन करें), इसलिए उपयोग करें:
curl -L http://github.com/ziyaddin/xampp/archive/master.zip -o xampp.zip
"कर्ल-क्लोक" असुरक्षित प्रोटोकॉल (-k) का उपयोग करके बनाता है, एसएसएल प्रमाणपत्र जांच को अक्षम करता है (जो कि गलत रास्ते के कारण प्रमाणपत्र से मेल नहीं खाता), और रिमोट सर्वर से प्रस्तावित फ़ाइल नाम (-ओ) का उपयोग करके आउटपुट फ़ाइल बनाते हैं। (असुर भी)। मेरी राय में, सर्वर को बेहतर ढंग से कॉन्फ़िगर किया जाना चाहिए जहां स्थानीय पुनर्निर्देशित उपनाम बनाए जा सकते हैं, जहां URL के इस गैर अनुरूप भाग को पारित करने से बचने के लिए आवश्यक है। लेकिन पुनर्निर्देशन केवल एक HTTP पुनर्निर्देशन (HTTP त्रुटि 30x) का उपयोग करके किया जाता है, जो कर्ल की समस्याओं का कारण बनता है जो (डिफ़ॉल्ट रूप से) इस (असुरक्षित) पुनर्निर्देशन का पालन नहीं करता है, और विकल्प (-k) इस सुरक्षा जांच को अक्षम करता है। इसलिए HTTP पुनर्निर्देशन (स्थायी रूप से स्थानांतरित) का उपयोग करने के बजाय, कृपया सर्वर के फाइल सिस्टम पर कुछ आंतरिक लिंक जोड़ें। यदि यह आवश्यक है क्योंकि URL वास्तव में किसी अन्य भौतिक सर्वर पर उनके फाइल सिस्टम के बीच कोई सीधी पहुंच के साथ होस्ट किया गया है, तो आपको इस होस्ट के लिए किसी अन्य DNS नाम का उपयोग करना चाहिए, ताकि क्लाइंट बिना किसी रीडायरेक्ट के सीधे सही क्वेरी करेंगे। फिर अपने वेब पेजों को ठीक करें (आप अपने वेबसर्वर लॉग्स का उपयोग करके यह देख सकते हैं कि HTTP 30x रीडायरेक्ट कहाँ वापस आए हैं और किन वेबपृष्ठों को जाँचने और अद्यतन करने की आवश्यकता हो सकती है)। ग्राहकों को असुरक्षित / अनियंत्रित प्रोटोकॉल का उपयोग करने के लिए मजबूर करना एक अच्छा विकल्प नहीं है।
तो यह निश्चित रूप से वेब सर्वर पर बहुत खराब कॉन्फ़िगरेशन की समस्या है: इसे ठीक करने के लिए उनके व्यवस्थापक से संपर्क करने का प्रयास करें।
ठीक है, आप एक्सल का भी उपयोग कर सकते हैं । axel एक प्रकाश कमांड लाइन डाउनलोड त्वरक है। यह समर्थन करता है HTTP, HTTPS, FTP
औरFTPS
प्रोटोकॉल है। इसका अच्छा और तेज विकल्प है।
axel
का उपयोग कर स्थापित करें:
apt-get install axel
इसके बाद अपनी फ़ाइल डाउनलोड करें:
axel http://github.com/ziyaddin/xampp/archive/master.zip
-L
पुनर्निर्देश का पालन करने के लिए विकल्प का उपयोग करें , आप --output
ज़िप फ़ाइल को पथ और नाम देने के लिए भी विकल्प का उपयोग कर सकते हैं । उदाहरण के लिए:
sudo curl -L https://github.com/CISOfy/lynis/archive/master.zip --output /etc/lynis.zip
नोट: यदि आपने लक्ष्य फ़ोल्डर में लिखने की अनुमति नहीं है, तो sudo का उपयोग करें।