सवाल पीएस इस प्रक्रिया के बारे में क्यों जान सकता है जो इसके बाद चलता है?


[root@myvm1 ~]# ps aux | grep ls
root     13594  0.0  0.1   3912   672 pts/1    R+   09:46   0:00 grep ls

उपरोक्त में, ps aux पहले चलता है और उसके आउटपुट को फिर से रीडायरेक्ट किया जाता है grep ls आदेश। grep ls आदेश के बाद चलाता है ps aux

तो क्यों कर सकते हैं ps उस प्रक्रिया के बारे में जानें जो उसके बाद चलता है और इसे अपने आउटपुट में रखता है?


2
2018-01-14 10:24


मूल


जबकि grep किसी भी आउटपुट को इसके निर्माण के बाद तक संसाधित नहीं कर सकता है, grep  प्रक्रिया पहले या बाद में बनाया जा सकता है ps प्रक्रिया। इसका कोई विशेष कारण नहीं है कि इसे एक या दूसरे तरीके से होना चाहिए। - David Schwartz


जवाब:


उपरोक्त में, ps aux पहले चलता है और उसके आउटपुट को फिर से रीडायरेक्ट किया जाता है grep ls आदेश। grep ls आदेश के बाद चलाता है ps aux

तो क्यों कर सकते हैं ps उस प्रक्रिया के बारे में जानें जो उसके बाद चलता है और इसे अपने आउटपुट में रखता है?

आप कमांड अनुक्रमण के लॉजिकल ऑर्डर के बारे में लिख रहे हैं।

यदि आपको बैश कार्यवाही में अंतर्दृष्टि मिलती है तो आपको पता चल जाएगा कि दोनों आदेश और पाइपिंग ढांचे को ऐसे क्रम में बनाया जा सकता है जो वास्तव में कोई फर्क नहीं पड़ता।

इसके अलावा पाइपिंग ढांचा शायद कमांड आउटपुट रीडायरेक्शन है।

आपका जवाब है: आदेश ps वास्तव में चलने वाली प्रक्रिया के बाद चलाया जाता है grep बनाया गया है।


4
2018-01-14 10:28



धन्यवाद। आपके उत्तर के आधार पर, मुझे एक और जवाब मिल गया है जो इसे अधिक विस्तार से बताता है: unix.stackexchange.com/questions/37508/... - bobo