shell - gnome terminal tabs open multiple ssh connections -
मेरे पास सर्वर की एक सूची वाला एक फ़ाइल है:
SERVERS.TXT: < पूर्व> एक गनोम टर्मिनल स्क्रिप्ट से, मैं प्रत्येक सर्वर के लिए एक टैब के साथ एक नया टर्मिनल खोलना चाहता हूं। < P> यहां मैंने जो कोशिश की है: यहां त्रुटि है: तर्कों को पार्स करने में विफल: "--command / -e" का तर्क मान्य आदेश नहीं है : मिलान करने से पहले मिलान समाप्त होने वाला पाठ 'के लिए मिला था' (पाठ '' एसएसएच '' था) -e और मुझे एक समान त्रुटि मिलती है: तर्कों को पार्स करने में विफल: "--command / -e" का तर्क नहीं है मान्य कमांड: 'मिलान करने के लिए मिलान करने से पहले पाठ समाप्त' के लिए मिला था ' (पाठ 'usr@192.168.0.100' '') स्पष्ट रूप से एक पार्सिंग त्रुटि है क्योंकि सेलेमीटर का अनुमान लगाकर और सीमांकक रखने के लिए रिक्त स्थान का उपयोग करके शेल उपयोगी साबित हो रहा है। बिना किसी सूचना के सर्वर फ़ाइल को बदल दिया जाता है और सर्वर के कई अलग-अलग सेटों को देखा जा सकता है। मैंने पाया इस सवाल के जवाब में ओ.पी. के जवाब के लिए खोज करते समय, लेकिन मेरा मुद्दा थोड़ा अलग था मुझे सर्वर की सूची पता है, वे एक फ़ाइल में नहीं हैं। फिर भी, अन्य समाधान पोस्ट किए मेरे लिए काम नहीं किया, लेकिन निम्न स्क्रिप्ट काम करता है, और यह है कि मैं < कोड> "कमांड / -ए" एक वैध कमांड नहीं है " त्रुटि। किसी भी आवश्यकता के अनुरूप स्क्रिप्ट बहुत आसान परिवर्तन होनी चाहिए: अब बड़ा सवाल यह है कि यह एक फ़ाइल से चलने पर काम करता है, लेकिन स्क्रिप्ट के अंदर से नहीं। निश्चित रूप से, यह मुद्दा 192.168.0.100 192.168.0.101 192.168.0.102
ग्नोम टर्मिनल --प्रफ़ाइल = टैबप्रोफाइल `सर्वर पढ़ें; Do echo "--tab -e 'ssh usr @ $ server'"; किया & lt; SERVERS.TXT`
के बाद स्थान को हटाने की कोशिश की, टर्मिनल --प्रफ़ाइल = टैबप्रोफाइल `सर्वर पढ़ें; Do echo "--tab -e'ssh usr @ $ server '"; किया & lt; SERVERS.TXT`
#! / बिन / श # # सर्वर में से प्रत्येक को टर्मिनल खोलें # # सर्वर की सूची LIST = "server1.info server2.info server3.info server4.info" cmdssh = `जो एसएसटी के लिए $ सूची में है शीर्षक = `ईको- n" $ {s} "| sed 's / ^ \ (। \) / \ U \ 1 /' 'आर्ग्स =" $ {आर्ग्स} - टैब - शीर्षक = \ "$ शीर्षक \ "--command = \" $ {cmdssh} $ {s} .com \ "" किया गया tmpfile = `mktemp` प्रतिध्वनि" गनोम-टर्मिनल $ {आर्ग्स} "& gt; $ tmpfile chmod 744 $ tmpfile। $ Tmpfile rm $ tmpfile
- command < / कोड> हिस्सा है, लेकिन जो भी मैंने कोशिश की थी, जब तक कि एक अस्थायी फ़ाइल को निर्यात नहीं किया गया।
Comments
Post a Comment