मैं कमांड लाइन से कई फाइलों को एफ़टीपी कैसे कर सकता हूं?


25

मैं एक निर्देशिका की सामग्री को एफ़टीपी करना चाहूंगा, लेकिन मुझे वाइल्डकार्ड का उपयोग करने का सही तरीका नहीं मिल सकता है। ऐसा लगता है कि यह एक आम बात होगी; क्या मेरा पूरा दृष्टिकोण गलत है?

आज्ञा है

ftp -s:"C:\Scripts\ftp01" ftpserver.domain.com

जिसे स्क्रिप्ट कहा जाता है, वह नीचे है। प्रति बिलिंक अपडेट किया गया।

username
password
ascii
cd "/destinationfolder"
lcd "C:\Backup"
mput *.bak
close
quit

स्क्रिप्ट शुरू होती है, कोई फाइल कॉपी नहीं होती है और एफ़टीपी सत्र खुला रहता है।

230 User username Logged in Successfully
ftp> ascii
200 TYPE Command OK A
ftp> cd "/destinationfolder"
250 Directory successfully changed to "/destinationfolder"
ftp> lcd "C:\Backup"
Local directory now C:\Backup.
ftp> mput *.bak
mput 9829980.bak? close
mput 6406766.bak? quit
ftp>
ftp>

निष्कर्ष

PROMPT कमांड को दबाने के लिए मुझे ध्वज जोड़ने की आवश्यकता थी:

ftp -i -s:"C:\Scripts\ftp01" ftpserver.domain.com

जवाबों:


36

mputकमांड जारी करने से पहले , promptइंटरएक्टिव मोड को अक्षम करने के लिए एक कमांड जारी करें । एक बार यह बंद हो जाने के बाद आपको mput(या mget) के लिए प्रत्येक फ़ाइल की पुष्टि करने के लिए नहीं कहना चाहिए ।


3
उन लोगों के लिए जो "इस promptकमांड का सिंटैक्स है ", आप सचमुच "प्रांप्ट" टाइप करते हैं और यह सत्य से असत्य का संकेत देता है।
नौमेनन

2
इंटरएक्टिव प्रॉम्प्टिंग को अक्षम करने का एक अन्य तरीका यह है -iकि आप ftpकमांड पर ध्वज का उपयोग करें (उदाहरण के लिए ftp -i -s:"C:\Scripts\ftp01" ftpserver.domain.com)। डॉक्स-i विकल्प के रूप में वर्णन करता है: "कई फ़ाइल स्थानांतरणों के दौरान इंटरैक्टिव प्रॉम्प्टिंग को बंद कर देता है।"
जेसी वेब वेब

3

मैंने कभी भी स्थानीय फ़ोल्डर के लिए पथनाम का उपयोग करने की कोशिश नहीं की है, लेकिन मैंने इसे स्थानीय निर्देशिका को बदलकर ( lcd) किया है:

username
password
ascii
cd "/destinationfolder"
lcd Backup
mput *.bak
close
quit


1

mputएकाधिक फ़ाइलों को रखने के लिए कमांड का उपयोग करें ।


1
हां, यही मैं इस्तेमाल कर रहा हूं
mmcglynn

एक फ़ायरवॉल के पीछे (विशेष रूप से SOHO या सस्ते व्यवसाय ग्रेड इकाइयों)? ftpविंडोज में निर्मित PASV मोड का समर्थन नहीं करता है, इसलिए स्थानांतरण लटका हुआ और कभी पूरा नहीं होगा।
क्रिस एस

1

यदि आपके पास व्यवस्थापक अधिकार हैं, तो आप ncftpput स्थापित कर सकते हैं । पुनरावर्ती एफ़टीपी अपलोड के लिए उपयोग करना आसान और बढ़िया है। पुनरावर्ती हस्तांतरण के लिए स्विच है -R

सॉफ्टवेयर अधिकांश लिनक्स वितरण में शामिल है। विंडोज के लिए यह साइगविन के साथ इंस्टॉल करने योग्य है


1

जैसा कि टिम Haegele ने उल्लेख किया है, ncftp यह लिनक्स पर बहुत आसानी से करता है, यदि आप इसे स्थापित करने में सक्षम और इच्छुक हैं:

sudo apt-get install ncftp
ncftp -R ftpserver.domain.com . /Scripts/ftp01

0

यह वह स्क्रिप्ट है जिसका मैंने उपयोग किया और जो मेरे लिए काम की।

Ftp1.bat (स्क्रिप्ट) के लिए:

ftp -i -s:\tmp\ftp.txt

Ftp.txt (स्क्रिप्ट) के लिए:

Open ip
username
password
prompt
lcd C:\YourFolder\YourFolder
binary
cd /DestinationFolder
prompt
mput *.bak
cd ..
disconnect
quit

हो सकता है कि कुछ ऐसे हिस्से हों जो आवश्यक नहीं हैं, लेकिन मैं इसे लगा रहा हूं क्योंकि यह मेरे लिए काम करता है, आशा है कि यह मदद करेगा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.