मेरे पास एक बाल प्रक्रिया है जो छद्म टर्मिनल में चलती है। मूल प्रक्रिया रूट के रूप में नहीं चलती है, लेकिन बच्चे की प्रक्रिया सु या सूडो के माध्यम से होती है। इस वजह से इसे बाहर निकलने के लिए मजबूर करने के लिए बाल प्रक्रिया को संकेत भेजना संभव नहीं है। मैं इसे इन तरीकों में से किसी एक से बाहर निकलने के लिए मजबूर करना चाहता हूं:बाल प्रक्रिया में Ctrl-C नियंत्रण वर्ण या टर्मिनल हैंगअप संदेश कैसे भेजें?
- एक Ctrl-C अनुकरण करना।
- एक टर्मिनल हैंगअप अनुकरण।
मैं इनमें से किसी एक को कैसे कर सकता हूं? मैं पहले से ही एक प्राइवेट मास्टर fd है, और मुझे कुछ इस तरह की कोशिश की है:
write(master, &termios.c_cc[VINTR], 1)
लेकिन यह कुछ भी नहीं है।
मुझे नहीं पता कि यह आपके प्रोग्राम/पीटीआई के साथ काम करेगा, लेकिन मैं बैश चलाने के बाद से क्या करता हूं, और बैश डिफ़ॉल्ट रूप से^सी को सिगिनट के रूप में लेता है [मुझे लगता है?] एक char बनाता है जिसमें एक हेक्स कोड: (0x03^सी के लिए) और फिर इसे मेरे पीटीआई के साथ लिखें: लिखें (m_nMaster, और ctrlC, sizeof (ctrlC)); –