मेरे पास विंडोज 7 पर मिनगॉ (जिसे 'गेट बैश' भी कहा जाता है ), और एक बैच फ़ाइल जो दूरस्थ लिनक्स कंप्यूटर पर बाहरी ड्राइव पर फ़ाइलों का बैकअप लेने के लिए rsync चलाता है। यहाँ बैच फ़ाइल है ( my_rsync_file.bat
)
REM Changing directory... (assuming we are in G:/My Documents/My Various Things)
cd ../
REM starting rsync...
bash -c "rsync -avzh -P --stats --timeout=60 --exclude Downloads . 'my_remote_linux_computer@128.95.170.200:/media/my_remote_linux_computer/LaCie/My\ Documents'"
यहाँ लाइन-बाय-लाइन स्पष्टीकरण का एक सा है:
REM Changing directory... (assuming we are in G:/My Documents/My Various Things)
यह सिर्फ मुझे याद दिलाने के लिए एक संदेश का उत्सर्जन करता है कि क्या हो रहा है।
cd ../
यह निर्देशिका को एक स्तर पर बदल देता है जहाँ से बैच फ़ाइल ('मेरे दस्तावेज़') है। बैच फ़ाइल मेरे विंडोज कंप्यूटर पर एक बाहरी ड्राइव में है। मैं इस बाहरी ड्राइव के सभी 'माई डॉक्यूमेंट्स' फोल्डर को अपने रिमोट लिनेक्स कंप्यूटर पर बाहरी ड्राइव पर समान नाम के फोल्डर के साथ सिंक करना चाहता हूं।
REM starting rsync...
बस एक और संदेश प्रिंट करता है।
bash -c "rsync -avz -P --stats --timeout=60 --exclude Downloads . my_remote_linux_computer@128.95.155.200:/media/my_remote_linux_computer/LaCie/My\\ Documents"
bash
: शुरू होता है MinGW जिसमें एक अंतर्निहित rsync लाइब्रेरी है
-c
: निश्चित नहीं कि यह क्या करता है
rsync
: फ़ाइलों को सिंक करने के लिए लाइब्रेरी, MinGW के साथ आती है
-avzh
: a-Archive, v-Verbose, z-Compress, h-Human-readable, ये सामान्य विकल्प हैं (और अधिक: http://linux.die.net/man/1/rsync )
-P
: बड़ी फ़ाइलों के लिए प्रगति दिखाएं ताकि मुझे पता चले कि क्या वह जमी हुई है या नहीं
--stats
: अंत में कितनी फाइलें और बाइट्स हस्तांतरित हुईं, इसका सारांश दिखाएं
--timeout=60
: इसे बाद में मार दें 60 सेकंड अगर यह अटकी हुई
--exclude
फ़ाइलों / निर्देशिकाओं को सिंक से अटक जाता है , तो इस मामले में मैं 'डाउनलोड' नामक एक निर्देशिका को बाहर करता हूं
.
: 'मेरे दस्तावेज़' की सभी सामग्रियों को सिंक करने के लिए इंगित करता है (उपरोक्त पंक्ति में बाहर करने के लिए निर्दिष्ट चीज़ की उम्मीद करें)
my_remote_linux_computer
: नाम मेरे दूरस्थ लिनक्स कंप्यूटर (यह वास्तविक नाम नहीं है;)
@128.95.155.200
: https://www.whatismyip.com/ से (मेरे वास्तविक आईपी पते नहीं)
/media/my_remote_linux_computer/LaCie/My\\ Documents
: मेरे दूरस्थ लिनक्स कंप्यूटर के आईपी ऐड्रेस : मेरे दूरस्थ लिनक्स कंप्यूटर पर निर्देशिका का पथ जिसे मैं फाइलें प्राप्त करना चाहता हूं। यह एक बाहरी ड्राइव है।
ध्यान दें कि "माई डॉक्यूमेंट्स" में स्थान दो बैकस्लैश के साथ बच गया है, और दूरस्थ गंतव्य का पूरा नाम और निर्देशिका दोहरे उद्धरण चिह्नों से घिरा हुआ है।
जब मैं अपने दूरस्थ लिनक्स कंप्यूटर के लिए पासवर्ड के लिए प्रेरित किया जाता हूं, तो मैं उस बैट फाइल पर डबल-क्लिक करना शुरू करता हूं। जब यह पूरा हो जाता है तो मुझे कुछ सारांश आउटपुट मिलते हैं और बंद करने के लिए किसी भी कुंजी को दबाने के लिए प्रेरित किया जाता है।
-c
बैश मैन से पैरामीटर का विवरण : -सी विकल्प मौजूद है, तो स्ट्रिंग से कमांड पढ़े जाते हैं। यदि स्ट्रिंग के बाद तर्क हैं, तो उन्हें $ 0 से शुरू करके, स्थितीय मापदंडों को सौंपा गया है।