দুটি উইন্ডো, একই ব্যবহারকারী, বাশ প্রম্পট সহ। উইন্ডো -১ প্রকারে:
$ mkfifo f; exec <f
সুতরাং বাশ এখন ফাইল বর্ণনাকারী 0 থেকে পড়ার চেষ্টা করছে, যা নামযুক্ত পাইপে ম্যাপ করা হয়েছে f। উইন্ডো -2 টাইপ করুন:
$ echo ls > f
এখন উইন্ডো -1 একটি এলএস প্রিন্ট করে এবং তখন শেলটি মারা যায়। কেন?
পরবর্তী পরীক্ষা: উইন্ডো -১ টি আবার খুলুন exec <f। উইন্ডো -2 টাইপ করুন:
$ exec 3>f
$ echo ls >&3
উপরের প্রথম লাইনের পরে, উইন্ডো -1 উঠে এবং একটি প্রম্পট মুদ্রণ করবে। কেন? উপরের দ্বিতীয় লাইনের পরে, উইন্ডো -1 lsআউটপুট মুদ্রণ করে এবং শেলটি জীবিত থাকে। কেন? আসলে, এখন উইন্ডো -2 এ, echo ls > fউইন্ডো -1 শেলটি বন্ধ করে না।
উত্তরটি অবশ্যই উইন্ডো -2 থেকে ফাইলের বর্ণনাকারী 3 এর অস্তিত্বের সাথে নামযুক্ত পাইপটি উল্লেখ করতে হবে ?!
exec 3>fচালানো হলে প্রথম শেলটি একটি প্রম্পট দেয়। (মাইনর পয়েন্ট, আপনার মন্তব্যে কি " লিখিত মোডে"
exec <f,bashপ্রয়াস নয় পড়া থেকেf, এটা প্রথম প্রয়াস করছে খুলতে করুন।open()কিছু পাইপ থেকে লেখার মোডে অন্য খোলা (যা এ নির্দেশ নল instantiated করা হবে, এবং শেল তা থেকে ইনপুট পড়তে হবে) করছেন প্রক্রিয়া আছে না হওয়া অবধি ফিরবে করা হবে না।