आप ssh में पाइप कर सकते हैं और रिमोट कमांड चला सकते हैं। इस स्थिति में, रिमोट कमांड है cat > big.txt
जो big.txt
फ़ाइल में स्टड की नकल करेगा ।
echo "Lots of data" | ssh user@example.com 'cat > big.txt'
यह आसान और सीधा है, जब तक कि आप ssh का उपयोग दूरस्थ छोर से कनेक्ट करने के लिए कर सकते हैं।
आप nc
डेटा को स्थानांतरित करने के लिए (नेटकैट) का उपयोग भी कर सकते हैं । प्राप्त करने वाली मशीन पर (जैसे, host.example.com):
nc -l 1234 > big.txt
यह nc
1234 पोर्ट को सुनने के लिए सेट किया जाएगा और big.txt
फ़ाइल में उस पोर्ट पर भेजे गए किसी भी चीज़ को कॉपी करेगा । फिर, भेजने की मशीन पर:
echo "Lots of data" | nc host.example.com 1234
यह कमांड nc
रिसीवर पर पोर्ट 1234 से कनेक्ट करने के लिए भेजने के पक्ष में बताएगा और पूरे नेटवर्क में स्टड से डेटा कॉपी करेगा।
हालाँकि, nc
समाधान में कुछ गिरावट है:
- कोई प्रमाणीकरण नहीं है; कोई भी 1234 पोर्ट से कनेक्ट हो सकता है और फ़ाइल में डेटा भेज सकता है।
- डेटा एन्क्रिप्टेड नहीं है, क्योंकि यह साथ होगा
ssh
।
- यदि कोई मशीन फ़ायरवॉल के पीछे है, तो चुने हुए पोर्ट को कनेक्शन के माध्यम से और ठीक से रूट करने की अनुमति देने के लिए खुला होना चाहिए, विशेष रूप से प्राप्त अंत पर।
- दोनों सिरों को स्वतंत्र रूप से और एक साथ स्थापित करना होगा।
ssh
समाधान के साथ , आप केवल एक समापन बिंदु से स्थानांतरण आरंभ कर सकते हैं।