जवाबों:
-S
एक नामित विंडो ( -t
) नामित विंडो ( ) के साथ टर्मिनल आकार ( -A
) को अलग किए गए मोड ( -d -m
) में प्रारंभ करें :
screen -S mySessionName -t myWinName0 -A -d -m
-t
उसी स्क्रीन सत्र में एक और नामित विंडो ( ) प्रारंभ करें -S
:
screen -S mySessionName -X screen -t myWinName2
सत्र में -X stuff $'cmds'
पहले नाम वाली विंडो ( -p
) में कुछ कमांड्स ( ) भरें -S
:
screen -S mySessionName -p myWinName0 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'
कुछ आदेशों ( -X stuff $'cmds'
) को -p
सत्र में दूसरे नामित विंडो ( ) में डालें -S
:
screen -S mySessionName -p myWinName1 -X stuff $'echo myWinName1\necho cmd1\necho cmd2\n'
स्क्रीन सत्रों को सूचीबद्ध करें और देखें कि क्या हुआ था:
screen -ls
screen -r mySessionName
नोट: लाइनफीड ( \n
) दबाने का अनुकरण करता है Enter। आप सेमीकॉलन का उपयोग अलग-अलग कमांड के लिए भी कर सकते हैं।
अंदर स्क्रीन:
:screen newcmd
को चलाने के लिएnewcmd
बाहर:
screen -X testen "screen newcmd"
दृष्टिकोण से ऊपर की कोशिश की, लेकिन दूसरी कमान दूसरी खिड़की पर निष्पादित नहीं की। मैंने विंडो नाम के बजाय विंडो नंबर का उपयोग करके उदाहरण को थोड़ा समायोजित किया:
सत्र बनाएँ
screen -S mySessionName -t 0 -A -d -m
दूसरी विंडो बनाएं
screen -S mySessionName -X screen -t 1
पहली विंडो पर कमांड भेजें
screen -S mySessionName -p 0 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'
दूसरी विंडो पर कमांड भेजें
screen -S mySessionName -p 1 -X stuff $'echo myWinName0\necho cmd1\necho cmd2\n'
अब जांचें कि क्या कमांड को पहले विंडो पर चलाया गया है
screen -R mySessionName -p 0
अब जांचें कि क्या कमांड दूसरी विंडो पर चलाया गया है
screen -R mySessionName -p 1
स्क्रीन 4.00.03 (CENTOS 6.3 x64) के साथ परीक्षण किया गया।
आप एक वैकल्पिक .screenrc को -c
तर्क के माध्यम से सेटअप कर सकते हैं । इस नए स्क्रीन आर्क में आप स्क्रीन सेशन शुरू होने पर शुरू करने के लिए कई कमांड सेट कर सकते हैं।
इस वैकल्पिक के अंत में .screenrc निम्नलिखित कमांड डालते हैं:
screen 1 cmd1 args
screen 2 cmd2 args
यदि आपको केवल एक प्रकार का स्क्रीन सत्र चलाने की योजना है और डिफ़ॉल्ट कमांड रन हमेशा ठीक हैं, तो आपको वैकल्पिक कॉन्फ़िगरेशन फ़ाइल को सेटअप करने की आवश्यकता नहीं है।
screen -S sessionName -t windowName1 -Adm <command> && screen -S sessionName -X screen -t windowName2 -Adm <command2>