विशिष्ट कार्यों के लिए शुरुआती उदाहरणों को स्वचालित कैसे करें


10

मैं कुछ प्रोग्रामिंग ट्यूटोरियल से गुजर रहा हूं और हर सत्र के लिए, मुझे कम से कम 3 टर्मिनल विंडो (एक लॉग फाइल पूंछ के लिए एक, आउटपुट के परीक्षण के लिए एक, विभिन्न शेल कमांड चलाने के लिए एक आदि) शुरू करना होगा।

अभी मैं उन सभी को मैन्युअल रूप से शुरू करता हूं: टर्मिनल आइकन, दाहिने फ़ोल्डर में सीडी पर क्लिक करें, कमांड में टाइप करें, और विंडो शीर्षक को कुछ सार्थक में बदल दें।

वहाँ एक स्क्रिप्ट या कुछ और है कि मेरे लिए यह स्वचालित होगा लिखने का एक तरीका है? और यदि हां, तो कैसे?

(मैं एक उत्तर के रूप में एक पूरी स्क्रिप्ट नहीं मिलने के साथ शांत हूं। एक सूचक जहां पढ़ना शुरू करना है वह भी काम करेगा।)

जवाबों:


9

चूंकि आप टर्मिनल आइकन पर क्लिक कर रहे हैं, मुझे लगता है कि आप उपयोग कर रहे हैं gnome-terminal

मुझे gnome-terminal --helpकमांड लाइन का उपयोग करके और वहां से पढ़कर विकल्पों की एक सूची मिली ।

मैको के जवाब पर बिल्डिंग, मैं कुछ इस तरह का सुझाव दे सकता हूं:

gnome-terminal --window --title=Log -e "tail -f /var/log/syslog" --window --title=Output --working-directory=output --window --active --title=Dev --working-directory=dev/project

यह उदाहरण तीन विंडो शुरू करता है (हालांकि आप --tabटैब के लिए पास कर सकते हैं) और प्रत्येक के लिए काम करने वाली निर्देशिका (घर के सापेक्ष) और शीर्षक सेट करते हैं, tailएक में कमांड शुरू करते हैं और तीसरी विंडो सक्रिय करते हैं।

बेशक, आप प्रत्येक विंडो को लॉन्च करने के लिए अलग-अलग लाइनों का उपयोग करना पसंद कर सकते हैं, खासकर यदि आपके पास कई तर्क हैं।

एक और उपयोगी बात, एक बार जब आप अपनी खिड़कियों को अपनी पसंद के अनुसार व्यवस्थित करते हैं, तो उपयोग करना है

gnome-terminal --save-config=FILE

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

बहुत सारे डेवलपर्स जो कई टर्मिनलों के साथ काम करते हैं, वे टर्मिनेटर का उपयोग करना पसंद करते हैं क्योंकि यह ग्रिड लेआउट और कीबोर्ड शॉर्टकट जैसी सुविधाओं को जोड़ता है।


-ई झंडे के साथ इस तरह से करने से कमांड के निष्पादित होते ही विंडो बंद हो जाएगी? और अगर ऐसा है, तो क्या यह संभव है कि खिड़की खुली रह सके?
ईएमएफ

8

जो भी टर्मिनल एमुलेटर आप उपयोग कर रहे हैं वह एक कमांड को एक तर्क के रूप में स्वीकार करने में सक्षम होना चाहिए। उदाहरण के लिए:

gnome-terminal -e "tail -f /var/log/syslog"

सिस्टम में अपने ऑटोस्टार्ट में ऐसी कमांड जोड़ें -> प्राथमिकताएं -> सत्र (उबंटू) या सिस्टम सेटिंग्स -> ऑटोस्टार्ट (कुबंटु)


4

आप स्क्रिप्ट का उपयोग करके उसे स्वचालित भी कर सकते हैं। मैं एडवांस बैश स्क्रिप्टिंग गाइड या बैश प्रोग्रामिंग HOWTO को पढ़ने की सलाह देता हूं , साथ ही आप जो भी टर्मिनल इस्तेमाल कर रहे हैं उसके लिए मैन पेज के साथ।

यहाँ एक सरल उदाहरण दिया गया है:

$ vi your-script
#!/bin/bash
gnome-terminal -e "tail -f /var/log/syslog"
gnome-terminal --working-directory=/foo/bar
gnome-terminal --whatever-else

तो बस इसे निष्पादन योग्य बनाएं:

$ chmod +x your-script

क्या आपको execउन सभी की आवश्यकता नहीं है ?
maco

हां, जब तक कि गनोम-टर्मिनल पहले से ही चल रहा है, तब कमांड सिर्फ अन्य चल रही प्रक्रिया के लिए एक नई विंडो खोलता है और फिर बंद हो जाता है।
लासपुलसेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.