क्या मैं किसी स्क्रिप्ट या कमांड लाइन से किसी नेटवर्क प्लेस में फ़ाइलों की प्रतिलिपि बना सकता हूं?

क्या यह संभव है, विंडोज एक्सपी में, कमांड लाइन से किसी नेटवर्क प्लेस में फाइलों की प्रतिलिपि बनाने के लिए, बैच फ़ाइल या इससे भी बेहतर, पावरशेल स्क्रिप्ट?

मुझे शोध के इस सड़क पर क्या भेजा गया था, जो उपयोगकर्ता की मशीन से WSS 3.0 दस्तावेज़ लाइब्रेरी में फ़ाइलों को प्रकाशित करने का प्रयास कर रहा था। मैं लाइब्रेरी में एक ड्राइव को मानचित्र में मैप नहीं कर सकता क्योंकि डब्ल्यूएसएस साइट 80 या 443 के अलावा किसी पोर्ट पर एनटीएलएम के माध्यम से प्रमाणीकृत करने के लिए उपलब्ध है। मुझे लगता है कि मैं फाइलों को धक्का देने के लिए वैकल्पिक रूप से डब्लूएसएस वेब सेवाओं का उपयोग कर सकता हूं, लेकिन मैं मैं अब इस सवाल के जवाब के बारे में उत्सुक हूँ।

0
ro fr bn
यहां समान प्रश्न भी देखें: serverfault.com/q/43116/84502
जोड़ा लेखक Synox, स्रोत

9 उत्तर

हाँ तुम कर सकते हो। मैं रोबोकॉपी जैसे टूल का उपयोग करने का सुझाव देता हूं।

0
जोड़ा

आप प्रमाणित करने के लिए 'नेट' कमांड का उपयोग कर सकते हैं और फिर फ़ाइलों की प्रतिलिपि बना सकते हैं।

copy src \\dest-machine\shared-library-name\dest

मैं वास्तव में वास्तव में निश्चित रूप से प्रमाणीकरण को संभालने का तरीका नहीं हूं यदि इसकी आवश्यकता हो।

0
जोड़ा

मैं इसके बारे में गलत हो सकता हूं, लेकिन मुझे लगता है कि न तो निक के रोबोकॉपी समाधान या नाथन की कॉपी कमांड समाधान काम करेगा। रोबोकॉपी एक मैप किए गए ड्राइव को प्रतीत होता है, जो मैं नहीं कर सकता क्योंकि यह पोर्ट 80 या 443 पर नहीं चल रहा है, और विंडोज एक पथ को संभाल नहीं सकता है जिसमें यूएनसी-स्टाइल नाम में बंदरगाह शामिल है:

copy src \\dest-machine:45000\shared-library-name\dest

मुझे एक एनएएनटी कार्य नहीं मिला जो या तो इस स्थिति को संभालेगा।

मुझे यह भी पता है कि ऐसे उपकरण हैं जो मुझे वेबएडीवी ड्राइव मैप करने की अनुमति देंगे। मैं और अधिक सोच रहा था कि जीयूआई के प्रयोग किए बिना नेटवर्क प्लेस का उपयोग करने का कोई तरीका था या नहीं।

0
जोड़ा

जो मैं देख रहा हूं, उससे ऐसा लगता है कि कमांड लाइन से किसी नेटवर्क प्लेस को सीधे एक्सेस/मैनिपुलेट करना संभव नहीं है, चाहे वह PowerShell या plain ol 'कमांड प्रॉम्प्ट में हो।

@ एसलीपसेक (# 138 99): सुझाव के लिए धन्यवाद, लेकिन PowerShell net use कमांड से कहीं अधिक गंतव्य पथ में पोर्ट नंबर का समर्थन नहीं करता है।

तो मेरी सबसे अच्छी स्थिति में सबसे अच्छी बात यह है कि मैं बुलेट काट रहा हूं और वेबड्राइव की तरह कुछ खरीद सकता हूं ताकि वेब-डीवी के माध्यम से गैर-मानक बंदरगाहों पर ड्राइव मैपिंग सक्षम हो सके, या कुछ अलग कॉन्फ़िगरेशन करें (उदाहरण के लिए एक अलग आईपी पते के साथ अलग वेब ऐप और होस्ट हेडर) मानक पोर्ट पर एनटीएलएम के माध्यम से साइट का पर्दाफाश करने के लिए शेयरपॉइंट में।

0
जोड़ा

यदि ऐसा कुछ है जो आपको स्क्रिप्ट की आवश्यकता है, तो आपको NAnt पर विचार करना चाहिए।

यह मुख्य रूप से स्क्रिप्ट बनाने के लिए उपयोग किया जाता है, लेकिन यह शुरू करने के लिए बहुत शक्तिशाली और उचित रूप से आसान है।

NAntContrib और nant ftp task जो आपकी मदद करनी चाहिए।

0
जोड़ा

"नेटवर्क प्लेस" में वास्तव में कोई एपीआई नहीं है, यह शॉर्टकट का एक गुच्छा है, और यदि मैं सही ढंग से याद करता हूं, तो SharePoint Share शैल एक्सटेंशन का उपयोग करता है।

यह सब कहने के लिए: PowerShell भी से फ़ाइल सिस्टम के रूप में शेयरपॉइंट तक पहुंचने के लिए एक एक्सटेंशन की आवश्यकता होती है, शेयरपॉइंट प्रदाता

0
जोड़ा

पावरहेल डेटास्टोरों में एक आम इंटरफेस प्रदान करने के लिए प्रदाताओं के अमूर्तता का उपयोग करता है। ये सामान्य संज्ञा "आइटम" के साथ चिपकने लगते हैं, इसलिए आप man * item * के साथ एक पूरी सूची प्राप्त कर सकते हैं। यदि आप एक स्टोर से डेटा के साथ प्रतिलिपि बनाने और अन्यथा काम करने के लिए एक और तरीका जानते हैं, तो आप इसका भी उपयोग कर सकते हैं, लेकिन cmdlets का उपयोग करके बेहतर "सीखें-एक बार, उपयोग-अक्सर" दृष्टिकोण प्रदान करता है। आपके मामले में आप कर सकते हैं:

Copy-Item test.txt -Destination \\dest-machine\share

यदि आपको इसकी आवश्यकता हो तो कॉपी-आइटम -Credential पैरामीटर का भी समर्थन करता है।

0
जोड़ा
कॉपी-आइटम में एक-प्रमाण पत्र पैरामीटर है, लेकिन मानक प्रदाताओं में से कोई भी (अर्थात् फाइल सिस्टम) इसका समर्थन नहीं करता है, इसलिए यह वास्तव में उपयोग करने योग्य नहीं है।
जोड़ा लेखक chills42, स्रोत

बैच फ़ाइल का उपयोग करके, आप संसाधन पर लॉग ऑन कर सकते हैं और फ़ाइल की प्रतिलिपि बना सकते हैं:

बैच फ़ाइल में निम्न शामिल होंगे:

net use \\{dest-machine}\{destfolder} {password} /user:{username}
copy {file} \\{dest-machine}\{destfolder}

जैसे

net use \\Development\myfolder mypassword /user:Administrator
copy newfile.c \\development\myfolder
0
जोड़ा

यदि आप windows box का जिक्र कर रहे हैं, तो बस xcopy का उपयोग करें। यह xcopy उपलब्ध होने के लिए बहुत मानक है।

xcopy src \\dest-machine\shared-library-name\dest
xcopy \\src-machine\shared-library-name\dest src
0
जोड़ा