2011-04-05 10 views
9

में टेलिनेट निष्पादित करने दें, हे, मैं टेलनेट में "टेलनेट लोकहोस्ट 4242" के साथ लॉगिन कर सकता हूं, अब मैं एक कमांड "शो नेटवर्क" निष्पादित करना चाहता हूं।टेलिनेट को एक लाइन

मैं इसे एक पंक्ति में कैसे कर सकता हूं?

कुछ है कि

$ टेलनेट स्थानीय होस्ट की तरह 4242 < - "शो नेटवर्क"

WOA यहां उत्पादन मैं चाहता हूँ

उत्तर

11

मैं expect पाया, मैं वास्तव में क्या चाहते हो एक निश्चित उत्पादन के लिए प्रतीक्षा करें और फिर से कार्रवाई के लिए यह:

expect << EOF 
spawn telnet localhost 4242 
expect -re ".*>" 
send "show network\r" 
expect -re ".*>" 
send "exit\r" 
EOF 
-1

आप में या कुछ भी लॉग इन करने की जरूरत नहीं है, तो आप उपयोग कर सकते हैं एक इस तरह "यहाँ दस्तावेज़":

telnet localhost 4242 << EOF 
show network 
EOF 
+1

नोप –

+2

काम नहीं करता है हाँ, यह बिल्कुल करता है; उदाहरण के लिए, यदि आप पोर्ट 25 का उपयोग करते हैं, तो आप इस तरह मेल भेज सकते हैं, या पोर्ट 80, आप इस तरह से एक वेब पेज ला सकते हैं - लोग इसे हर समय करते हैं। जैसा कि मैंने कहा, यह काम करता है अगर आपको लॉग इन करने की आवश्यकता नहीं है। अब, यदि आप "काम नहीं करते" से अधिक विवरण प्रदान करना चाहते हैं, तो शायद हम यह जानने में आपकी सहायता कर सकते हैं कि क्या करना है। –

+1

thats अधिक पठनीय: http://pastebin.com/ZdckuFxq जब मैं का उपयोग आप क्या पोस्ट मैं मिलता है: कोशिश कर रहा है :: 1 ... कोशिश कर रहा 127.0.0.1 ... स्थानीय होस्ट से कनेक्ट किया गया। एस्केप कैरेक्टर '^]' है। को OpenBSC नियंत्रण इंटरफ़ेस कॉपीराइट में आपका स्वागत है (सी) 2008-2010 हैराल्ड वेल्ट, होल्गर Freyther योगदान डैनियल Willmann, जनवरी Lübbe, स्टीफन श्मिट डीटर Spaar, एंड्रियास Eversberg द्वारा लाइसेंस GPLv2 +: जीएनयू जीपीएल [...] की अनुमति दी कानून द्वारा कनेक्शन विदेशी मेजबान द्वारा बंद कर दिया गया। मैं अब प्रयोग किया जाता मैं क्या चाहते उम्मीद << EOF अंडे टेलनेट स्थानीय होस्ट 4242 -re उम्मीद प्राप्त करने की उम्मीद "। *>" भेजने "शो नेटवर्क \ r" -re उम्मीद "। *>" भेजने "बाहर निकलें \ r" ईओएफ –

संबंधित मुद्दे