मैं इसे थोड़ी देर के लिए काम करने के लिए तैयार कर रहा हूं, इसलिए मुझे कुछ गलतफहमी है कि पाइप काम कैसे मेरी परेशानी का मूल कारण है।
मेरा लक्ष्य कुछ दूरस्थ होस्ट के माध्यम से टीसीपी कनेक्शन शुरू करना है netcatऔर फाइलसिस्टम पर दो नामित पाइप हैं: एक जो आने वाली डेटा प्राप्त करने के लिए प्रक्रियाओं को पढ़ सकता है, और अन्य जो प्रक्रियाएं आउटगोइंग डेटा के रूप में सेवा कर सकती हैं। मैं वर्तमान में निम्नलिखित निर्माण का उपयोग कर रहा हूं:
mkfifo in
mkfifo out
cat out | netcat foo.bar.org 4000 > in &
यहां से, मैं अन्य प्रक्रियाओं को इस खुले टीसीपी कनेक्शन को पढ़ने / लिखने की अनुमति देना चाहूंगा। क्या यह "बस काम" होना चाहिए, या क्या कोई कारण है कि इस तरह का निर्माण काम नहीं कर सकता है?
क्या लगता है वर्तमान में होने की है कि मैं से पढ़ सकते हैं outइस मुद्दे के बिना, लेकिन जब मैं करने के लिए लिख inरहा उत्पादन एक टूट पाइप और बाद के सभी संचार प्रकट होता है उल्लेख मृत होने का मिलता है। विचार?
(संबंधित: मैं मूल रूप से इस्तेमाल किया:
netcat foo.bar.org 4000 < out > in &
लेकिन इसे इनपुट के इंतजार में ब्लॉक करना पाया। मैं इसके बारे में उत्सुक हूं, लेकिन यह शायद एक अलग प्रश्न में बेहतर है।)
write(stdout): Broken pipeको लिखने के बाद (या थोड़ी देर बाद) प्राप्त करेंout।