मैं Ubuntu 16.04 का उपयोग करता हूं और मुझे निम्नलिखित tmux
समाधान की आवश्यकता है क्योंकि मैं sleep
अपने विशेष मामले के साथ एक टाइमआउट प्रक्रिया चलाना चाहता हूं जिससे मैं संतुष्ट नहीं था at
और nohup
(जब संयोजन nohup-sleep
) के साथ एक बग का सामना करना पड़ा था । अब, tmux
सबसे अच्छा विकल्प के रूप में लगता है क्योंकि इसका अपना स्वयं का हैंगअप तंत्र है और वास्तव में मैनुअल उपयोग में ठीक काम कर रहा है (मैं केवल उस प्रक्रिया को स्वचालित करने के संबंध में प्रश्न पूछता हूं जो मैं पहले से मैन्युअल रूप से कर सकता हूं)।
क्या चाहिए मुझे:
मुझे निम्न 3 कार्यों को करने के लिए एक तरीका चाहिए, एक ऑपरेशन में:
- एक नया
tmux
सत्र संलग्न करना । - उस सत्र के लिए कमांड के एक तैयार सेट को इंजेक्ट करना, जैसे
(sleep 30m ; rm -rf dir_name ; exit)
। मैं विशेष रूप से एक बहु-पंक्ति सेट पसंद करूंगा, और एक लंबी पंक्ति नहीं। - उपरोक्त आदेश को निष्पादित करते हुए उस क्षण को सेट किया गया जिसे नए
tmux
सत्र में स्टडिन के रूप में लिखा जाना था ।
दूसरे शब्दों में, मैं एक अन्य tmux
सत्र में निर्धारित कोड को निष्पादित करना चाहता हूं जो विशेष रूप से उस कारण के लिए बनाया गया था, लेकिन सभी को एक ऑपरेशन में करने के लिए।
टिप्पणियाँ:
मेरा लक्ष्य अपने सभी मूल कार्य सत्रों से (जो मैं ज्यादातर समय काम करता हूं) से करना है। आम तौर पर, मेरा नए बने सत्र में जाने का कोई इरादा नहीं है, मैं बस इसे अपने आप ही निष्पादित कोड के साथ बनाना चाहता हूं और यही है।
यदि संभव हो तो, मैं एक वंशानुगत समाधान पसंद करूंगा। मुझे लगता है कि यह सबसे कुशल है।
1.
ऐसा करने के दो तरीके हैं, एक में पहले एक अस्थायी स्क्रिप्ट बनाना शामिल है (जिसमें कोड शामिल है) और इसे निर्माण के साथ निष्पादित करें और दूसरा एक वंशानुगत है मार्ग।2.
यदि दूसरा तरीका काम करता है (जब प्रत्येक इको रो में हेरेडोक की प्रत्येक कोड पंक्ति होती है) तो हमें इसे बैश वैध कोड होने पर हैक के रूप में क्यों देखना चाहिए? शायद इसलिए कि हेरेडोक की पंक्तियों को प्रतिध्वनित किया जाता है और नियमित रूप से हेरेडकोस में निष्पादित नहीं किया जाता है?