উত্তর:
তারা সম্পূর্ণ ভিন্ন উপায়ে কাজ করে।
প্রোগ্রামটি আনবুফার নামকৃত কমান্ডটি চালানোর প্রত্যাশাকে ব্যবহার করে। যেহেতু প্রত্যাশা শিশু প্রক্রিয়াটির স্টাডাউটের সাথে সংযুক্ত হওয়ার জন্য ছদ্ম-টিটি তৈরি করে, তাই শিশুটিকে এই ভেবে বোকা বানানো যেতে পারে যে এটি ব্লক-বাফারিংয়ের পরিবর্তে লাইন-বাফারিং ব্যবহার করা উচিত। কিছু প্রোগ্রাম তাদের আচরণ পরিবর্তন করবে যখন ইসটিটি (স্টাডআউট) সত্য হয়, অন্যরা তা করে না এবং কোনটি করবে এবং কোনটি করবে না তা জানা খুব কঠিন।
প্রোগ্রামটি stdbuf গতিশীল লোড বাইনারিগুলির জন্য libstdbuf কে libc এর সামনে রাখার চেষ্টা করে। যেখানে libstdbuf libc stdio কলগুলির ডিফল্ট বাফারিং কৌশলটি নতুনভাবে সংজ্ঞায়িত করে।
আমি এটি দ্বারা খুঁজে পেয়েছি
apt-get source expect coreutils
এবং প্রতিটি প্রোগ্রামের জন্য প্রাসঙ্গিক উত্স পড়া।
unbuffer -p
ম্যানপেজ থেকে): যদি কোনও প্রক্রিয়া খাওয়ানোর ইনপুটটি আনবুফার থেকে প্রস্থান হয় তবে ভুলভাবে কাজ করতে পারে। বিবেচনা করুন:process1 | unbuffer -p process2 | process3
যদি প্রসেস 1 প্রস্থান করে, প্রক্রিয়া 2 এখনও শেষ নাও হতে পারে। আনবুফারের পক্ষে অপেক্ষা করা দীর্ঘক্ষণ জানা অসম্ভব