بلاگ/تعداد فرآیندهای در حال اجرا در محیط لینوکس
به‌روز شده

تعداد فرآیندهای در حال اجرا در محیط لینوکس

چگونه می‌توان به تعداد فرآیندهای در حال اجرا در محیط لینوکس دست یافت؟ چگونه می‌توان به شمارش تمام فرآیندهای در حال اجرا در محیط لینوکس پرداخت؟ برای یافتن پاسخ این پرسش‌ها با ما همراه باشید. فرآیندهای در حال اجرا در محیط لینوکس همان برنامه‌ها یا دستوراتی هستند که در لینوکس اجرا می‌شوند. در ادامه فرمان‌های مختلفی که برای شمارش تعداد فرآیندهای در حال اجرا در محیط لینوکس مورد استفاده قرار می‌گیرند، بررسی خواهیم کرد.

1398/10/282482 بازدید
تعداد فرآیندهای در حال اجرا در محیط لینوکس
چگونه می‌توان به تعداد فرآیندهای در حال اجرا در محیط لینوکس دست یافت؟ چگونه می‌توان به شمارش تمام فرآیندهای در حال اجرا در محیط لینوکس پرداخت؟ برای یافتن پاسخ این پرسش‌ها با ما همراه باشید. فرآیندهای در حال اجرا در محیط لینوکس همان برنامه‌ها یا دستوراتی هستند که در لینوکس اجرا می‌شوند. در ادامه فرمان‌های مختلفی که برای شمارش تعداد فرآیندهای در حال اجرا در محیط لینوکس مورد استفاده قرار می‌گیرند، بررسی خواهیم کرد.

مشاهده فرآیندهای در حال اجرا در محیط لینوکس

فرمان ps برای فهرست‌کردن فرآیندهای کنونی که در سیستم‌عامل در حال اجرا هستند، و همین‌طور PID های آنها در لینوکس و سیستم‌های مشابه یونیکس مورد استفاده قرار می‌گیرد. حداقل تعداد فرآیندهای در حال اجرا در محیط لینوکس ۲ عدد است که در صفحه نمایش داده می‌شود. به عنوان مثال، فرمان‌های bash و ps به صورت پیش‌فرض در لینوکس در حال اجرا هستند که با تایپ فرمان ps فهرست می‌شوند.
php
ps
نمونه خروجی:  
php
PID TTY          TIME CMD31043 pts/3    00:00:00 bash32324 pts/3    00:00:00 ps
شمارش برای هر فایل در محیط لینوکس wc مخففی برای تعداد کلمات است. فرمان wc به صورت پیش‌فرض، تعداد خطوط، کلمات و کاراکترها در متن شمارش می‌کند. به عنوان مثال، با کد زیر تعداد خطوط جدید را می‌توانید نمایش دهید:
php
echo "line 1" | wc –l
برای چاپ تعداد بایت‌ها:  
php
echo "Hello" | wc -c
امکان چاپ تعداد کلمات نیز به صورت زیر وجود خواهد داشت:
php
echo "Hello world" | wc –w

نحوه پیدا کردن تعداد فرآیندهای در حال اجرا در محیط لینوکس

این امکان وجود دارد که با استفاده از فرمان ps همراه با فرمان wc به تعداد فرآیندهای در حال اجرا در محیط لینوکس بر روی سیستم‌تان دست پیدا کنید. امّا این کاری است که میتواند توسط هر کاربری صورت گیرد. شما به عنوان کاربر root که از فرمان sudo استفاده می‌کند، بهتر است فرمان‌های زیر را به کار ببرید.

دستورهای مورد استفاده برای شمارش تعداد فرآیندهای در حال اجرا در محیط لینوکس

فرمت فرمان لینوکس به صورت زیر است:
php
# ps -e | wc -l
برای مشاهده و شمارش هر کدام از فرآیندها در سیستم با استفاده از فرمت BSD
php
# ps axu | wc –l
اگر می‌خواهید تعداد هر کدام از فرآیندها را به صورت شناسه vivek به فرمت کاربر مشاهده کنید، فرمان زیر را اجرا نمایید:
php
$ ps -U vivek -u vivek u | wc -l
یک نمونه دیگر برای کاربر www-data
php
$ ps -U www-data -u www-data u | wc –l
به شکل خلاصه و برای شمارش تعداد فرآیندهای در حال اجرا در محیط لینوکس از طرف یک کاربر root می‌توانید از فرمان زیر استفاده کنید:
php
sudo ps -U root | wc -lsudo ps -U root -u root u | wc –l
سپس به شمارش تعداد شناسه‌های فرآیندهای nginx با فرمت زیر می‌پردازیم:
php
ps -C nginx | wc -lps -C nginx -o pid= | wc –l
از گزینه --no-headers یا --no-heading نیز می‌توانید استفاده کنید. این کار باعث میشود که بدون چاپ سربرگ، تعداد فرآیندهای در حال اجرا به‌درستی برای شما نمایش داده شود.
php
# ps -e --no-headers | wc -l52# ps -e | wc -l53
در هنگام شمارش تعداد واقعی nginx بهتر است که با استفاده از فرمان ps، فرمان grep را از حالت اجرا خارج کنیم:
php
ps -e --no-headers | grep [n]ginxps -e --no-headers | grep [n]ginx | wc –l

گزینه‌های مختلف فرمان wc

  -c            چاپ تعداد بایت‌ها -m          چاپ تعداد کاراکترها -l             چاپ تعداد خطوط جدید -w           چاپ تعداد کلمات --help    نمایش راهنمای فرمان و خروج

گزینه‌های مختلف فرمان ps

  -e            انتخاب تمام فرآیندها (قالب گنو / لینوکس) aux         انتخاب تمام فرآیندها (قالب بی‌اس‌دی) -U user                 انتخاب شناسه کاربر یا نام کاربری -u user انتخاب شناسه مؤثر کاربر یا نام کاربری -C cmdlist            انتخاب بر اساس نام فرمان. این گزینه فرآیندهایی را انتخاب می‌کند که نام اجرایی آنها در لیست سی‌ام‌دی وجود داشته باشد. --no-headers     عدم چاپ سربرگ  

جمع‌بندی

در این مطلب، نحوه فهرست‌کردن تعداد فرآیندهای در حال اجرا در محیط لینوکس یا سیستم‌های شبیه به یونیکس را با استفاده از گزینه‌های مختلف خط فرمان بررسی کردیم. برای کسب دانش بیشتر در این زمینه می‌توانید به راهنمای فرمان ps مراجعه کنید.