उपयोगकर्ता की सहभागिता के बिना एक कमांड लाइन में एफ़टीपी साइट से फाइलें कैसे डाउनलोड करें (विंडोज)


13

मुझे पता है कि एक एफ़टीपी कमांड है जिसे विंडोज पर कमांड लाइन से चलाया जा सकता है, और यह एफ़टीपी साइट से एक फ़ाइल डाउनलोड करता है। उपयोगकर्ता + पासवर्ड "उस" एक-पंक्ति cmd में निर्दिष्ट हैं। ये ऑप्शन + पासवर्ड passtrough उस कमांड लाइन पर होना चाहिए।

echo open 192.168.1.64 21> ftp.txt
echo anonymous>> ftp.txt
echo ftp@ftp.com>> ftp.txt
echo bin >> ftp.txt
echo get test.txt >> ftp.txt
echo bye >> ftp.txt

ftp -s:ftp.txt

क्या आपको एफ़टीपी के माध्यम से डाउनलोड करने की आवश्यकता है या क्या आपको किसी प्रोग्राम के साथ उन फाइल को डाउनलोड करने की आवश्यकता है? (रुपीइन फ़ाइल को नाम से सिंक और कमांड लाइन से पढ़ सकते हैं। एसपीपी कमांड लाइन से भी कर सकते हैं। दोनों सादे-पाठ की तरह प्राचीन नहीं हैं, no_true_security FTP)।
हेन्नेस

जवाबों:


13

इसे आज़माएं: बैच फ़ाइलें - अनअटेंडेड एफ़टीपी डाउनलोड

WGET ftp://ftp.mydomain.com/path/file.ext  

अनाम डाउनलोड के लिए

या:

WGET ftp://user:password@ftp.mydomain.com/path/file.ext  

जब प्रमाणीकरण की आवश्यकता होती है।


जैसा कि @XavierStuvw ने संपादन और टिप्पणियों के माध्यम से बताया, WGETलोअरकेस में स्वैप करने wgetसे लिनक्स में काम होता है।

wget ftp://user:password@ftp.mydomain.com/path/file.ext

मुझे नहीं लगता कि किसी भी कमांड को वहां एक लाइन में उपयोगकर्ता और पासवर्ड स्विच का विकल्प है।
साउंडहैक्स

-s स्विच वाक्य में था जैसा कि मुझे याद है
soundhax

2
सुपर उपयोगकर्ता में आपका स्वागत है! जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो यहां उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
कनाडाई ल्यूक

1
@CalvT कोई आपत्ति नहीं। टिप्पणी का विस्तृत लाभ यह है कि लिनक्स-उपयोगकर्ता इंटरनेट खोज के बाद इस पृष्ठ पर उतर सकते हैं और उस प्रणाली को देख सकते हैं जो इस पर लागू होती है। यह वास्तव में मेरे साथ हुआ।
XavierStuvw

1
@CalvT शीर्षक वास्तव में सटीक है, लेकिन खोज इंजन अक्सर पूरे उत्तर फ्रेम की कल्पना करते हैं और इसमें छप करना आसान है। बेशक यह पाठक को मनमौजी होने से नहीं छूटना चाहिए, लेकिन इस मामले में यह संयोग था कि लिनक्स और विंडोज निर्देश मूल रूप से एक ही हैं। अच्छा किया, धन्यवाद।
ज़ेवियरस्ट्यूव

8

मुझे रास्ता मिल गया:

echo open 192.168.0.1 >> ftp &echo user admin w00t >> ftp &echo binary >> ftp &echo get file.zip >> ftp &echo bye >> ftp &ftp -n -v -s:ftp &del ftp

जब मैंने इसे आज़माया तो यह काम नहीं किया (मैंने इसके बजाय WinSCP के कमांड लाइन क्लाइंट का उपयोग करके समाप्त किया )। विंडोज के किस संस्करण पर इसका परीक्षण किया गया था?
पीटर मोर्टेंसन

क्या आप बता सकते हैं कि यह रेखा कैसे काम करती है? कोई दस्तावेज नहीं मिल रहा है। मैं इसे psftp
stallingOne के

@stallingOne &लाइन ब्रेकर के रूप में सोचें ... यह वास्तव में कई कमांड हैं। मूल रूप से वह एक स्क्रिप्ट बनाता है, लाइन बाय लाइन, उपयोग echo, और फिर ftpइसे चलाने के लिए कहता है। वह स्क्रिप्ट फ़ाइल को ftpभी नाम दे रहा है, जो इसे भ्रमित करता है।
हेवनार्ड

फ़ाइल नाम की खराब पसंद। "ftp" उस स्क्रिप्ट का फ़ाइल नाम है जिसे वह बना रहा है और exe का नाम है। इसलिए पथ संकल्‍प ftp -n -v -s:ftpथोड़ा हिंकी है। ("Ftp" का प्रत्येक उपयोग अलग-अलग चीजों को संदर्भित करता है)
चाड शोगिन्स

2

ध्यान दें कि आप / का उपयोग करके डॉस में एक कमांड के सिंटैक्स के लिए पूछ सकते हैं? स्विच करें। उदाहरण के लिए:

C: \> ftp /?

एफ़टीपी सर्वर सेवा चलाने वाले कंप्यूटर से और उसके लिए फ़ाइलें स्थानांतरित करता है
(कभी-कभी एक डेमन कहा जाता है)। पारस्परिक रूप से Ftp का उपयोग किया जा सकता है।

एफ़टीपी [-v] [-d] [-आई] [-एन] [-ग] [-एस] फ़ाइल नाम] [-ए] [-ए] [-x] सेंडबफ़र] [-r: recvbuf
fer] [-b: asyncbuffers] [-w: windowsize] [होस्ट]

  -v दूरस्थ सर्वर प्रतिक्रियाओं का प्रदर्शन दबा देता है।
  -n प्रारंभिक कनेक्शन पर ऑटो-लॉगिन को दबा देता है।
  -मैं एकाधिक फ़ाइल के दौरान इंटरैक्टिव प्रांप्टिंग बंद कर देता है
                  स्थानान्तरण।
  -d डीबग करना सक्षम करता है।
  -g डिसबैलेंस फाइलनाम ग्लोबिंग (GLOB कमांड देखें)।
  -s: फ़ाइल नाम FTP कमांड वाले टेक्स्ट फ़ाइल को निर्दिष्ट करता है; 
                  FTP प्रारंभ होने के बाद कमांड स्वचालित रूप से चलेंगे।
  डेटा कनेक्शन को बांधते समय किसी भी स्थानीय इंटरफ़ेस का उपयोग करें।
  -अनाम के रूप में लॉगिन करें।
  -x: sockbuf 8192 के डिफ़ॉल्ट SO_SNDBUF आकार को ओवरराइड करता है।
  -r: recv sockbuf 8192 के डिफ़ॉल्ट SO_RCVBUF आकार को ओवरराइड करता है।
  -b: async काउंट 3 के डिफॉल्ट async काउंट को ओवरराइड करता है
  -w: windowsize 65535 के डिफ़ॉल्ट ट्रांसफर बफर आकार को ओवरराइड करता है।
  होस्ट रिमोट के होस्ट नाम या आईपी पते को निर्दिष्ट करता है
                  कनेक्ट करने के लिए होस्ट।

टिप्पणियाँ:
  - mget और mput कमांड हाँ / ना / छोड़ के लिए y / n / q लेते हैं।
  - आदेशों को निरस्त करने के लिए कंट्रोल-सी का उपयोग करें।

अपने मामले में, आप लॉगिन प्रतिक्रियाओं सहित, इसे स्क्रिप्ट को फीड करने के लिए -s स्विच का उपयोग करना चाहेंगे।

उदाहरण के लिए:

  1. निम्नलिखित सामग्री के साथ एक स्क्रिप्ट फ़ाइल (c: \ scriptfile.txt) बनाएँ:

    open
    servername_or_ip
    username
    password
    get
    /fullpath/thefile.txt
    c:\fullpath\thefile.txt
    quit
    
  2. -s स्विच के साथ ftp निष्पादित करें और स्क्रिप्ट फ़ाइल नाम निर्दिष्ट करें

    C:\>ftp -s:c:\scriptfile.txt
    

Windows XP पर (हाँ, हाँ, मुझे पता है), इसका परिणाम "अज्ञात होस्ट /?"
पीटर मोर्टेंसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.