যদি, মধ্যে bash, আমি কার্যকর:
cmd1 | cmd2 | ... | cmdi | ... | cmdn &
যেখানে cmd{1..n}পৃথক নাও হতে পারে, আমি কীভাবে এর পিআইডি পাব cmdi? বিকল্পভাবে, আমি কীভাবে cmdiপ্রক্রিয়াটি সংকেত করতে পারি ? (উদাহরণস্বরূপ, এটি প্রেরণ করবেন SIGUSR1?)
pkill/ pgrep, pidofইত্যাদি ভাল উত্তরের মতো বলে মনে হচ্ছে না, কারণ cmdiএকই পাইপলাইনের অংশ হিসাবে সম্ভবত চলার অন্যান্য উদাহরণগুলি । আমার জন্য jobs -pপিআইডি দেয়cmd1
iকিছু হতে পারে {1..n}।
cat /var/run/out | nc -l 8080শুধু কৃত্রিম অনুরূপ করতে cmd1 | cmd2? আপনার সীমাবদ্ধতা, আপনি যে খালি হাড়ের পাইপলাইন টাইপ করতে চান এবং তারপরে পিআইডিগুলি পুনরুদ্ধার করতে চান তা (1) প্রশ্নের মধ্যে বর্ণিত নয় এবং (2) ভাল, সাধারণ সমাধানের অনুমতি দেওয়া সম্ভব নয় unlikely
cmd1 | cmd2উভয় পিআইডি সহজেই গ্রহণযোগ্য এমন একটি অত্যন্ত বিশেষ কেস। আমি এন সম্পর্কে কিছু বলেছি? তাহলে আপনি কেন এন = 2 ধরে নিবেন? আমি কি সেমিডিডি কিছু বললাম? তাহলে আপনি কেন ধরে নেবেন যে আমি সেমিডিডি সংশোধন করতে পারব? আমি একটি সাধারণ সমাধান চাইছি এবং আপনি বিধিনিষেধ আরোপ করছেন।