نحوه اجرای دستورات Linux در پس زمینه


دستورات لینوکس یک روش عالی برای تعامل با یک سیستم با استفاده از یک ترمینال است. با این حال ، گاهی ممکن است انجام این کار مدتی طول بکشد. این کاربران را مجبور می کند که مدت طولانی منتظر بمانند یا پوسته کاملا جدیدی ایجاد کنند.

خوشبختانه می توانید با پیروی از چند روش ساده ، دستورات Linux را در پس زمینه اجرا کنید. در ادامه این مقاله برخی از این رویکردها توضیح داده شده است.

1. بعد از دستور یک برچسب اضافه کنید

ساده ترین راه برای اجرای دستور پس زمینه لینوکس یک افزونه است رمز Ampersand ( & ) بعد از سفارش. به عنوان مثال ، اگر ویرایشگر متن gedit را از ترمینال خود شروع کنید ، نمی توانید از بسته بندی استفاده کنید تا زمانی که ویرایشگر را ببندید. با این حال ، هنگامی که شما اضافه کنید & به دستور شما می توانید بلافاصله از پوسته استفاده کنید.

 gedit &

2. از bg برای ارسال دستورات اجرایی در پس زمینه استفاده کنید

بعضی اوقات شما فقط یک دستور را اجرا می کنید تا متوجه شوید که انجام آن خیلی بیشتر طول می کشد. شما می توانید به راحتی از طریق این دستورات را در پس زمینه ارسال کنید فشار بر کلیدهای Ctrl + Z سپس از دستور استفاده کنید جی . جلوی خودت را بگیر Ctrl + Z روند در حال انجام است و او آن را می گیرد جی به پس زمینه

با وارد کردن می توانید لیستی از تمام کارهای پس زمینه را مشاهده کنید مأموریت در دستگاه از یک دستور استفاده کنید fg برای بازگشت به وظیفه فعلی.

3- دستورات پس زمینه را با استفاده از nohup ارسال کنید

سفارش مجاز است نه در لینوکس ، سرپرستان دستورات ترمینال را که توسط HUP یا محافظت می شوند ، اجرا می کنند مکالمه را تمام کنید . می توانید دستورات Linux را در پس زمینه با nohup اجرا کنید.

مثال زیر اسکن درگاه های Nmap را در پس زمینه انجام می دهد.

 nohup sudo nmap -sS --top-ports=15 192.168.1.1/24

یکی از مزایای اصلی nohup این است که دستورات شما حتی اگر از پوسته خارج شوند نیز اجرا می شوند. همچنین گزارش های اجرا ایجاد می کند. نگاه کن nohup.out در فهرست فعلی یا در محدوده $ HOME.

4- دستورات پس زمینه را با استفاده از تغییر مسیرهای سیستم اجرا کنید

همچنین می توانید با استفاده از تغییر مسیر سیستم ، دستورات پس زمینه را در Linux اجرا کنید. به عنوان مثال ، اگر دستور را اجرا می کنید پینگ در زیر ، پوسته شما آن را در پس زمینه اجرا می کند و بلافاصله خط فرمان را برمی گرداند.

 ping -c5 8.8.8.8 >output.log 2>&1 &

در اینجا خروجی پینگ به یک فایل هدایت می شود خروجی.لاگ . می توانید آن را جایگزین کنید / dev / null اگر می خواهید نتیجه را نادیده بگیرید. او می گوید 2> و 1 bash تمام خطاها را به همان پرونده هدایت می کند. & سیگنال های bash نهایی برای اجرای این دستور در پس زمینه.

5- با استفاده از رد کردن ، دستورات Linux را در پس زمینه تنظیم کنید

او آنرا اختراع می کند انکار می کنم در لینوکس ، اجرای دستورات در پس زمینه آسان است. اول ، شما باید کار را در پس زمینه با یک اپراتور ارسال کنید & . سپس بنویس انکار می کنم تا از پوسته اش جدا شود.

 gedit &
disown

یکی از مشخصه های اصلی انصراف ، مانند nohup ، این است که هنگام بستن پوسته یا خروج ، سیستم مأموریت شما را نمی کشد.

6. دستورات Linux را در پس زمینه با TMux اجرا کنید

TMux یک مولتی پلکسر قدرتمند است که به ما امکان می دهد چندین جلسه ترمینال را در یک پنجره شروع کنیم. یادگیری tmux یک انتخاب عالی برای افرادی است که با آن آشنا نیستند. Tmux اجرای دستورات پس زمینه را در لینوکس آسان می کند.

 tmux new -d 'ping -c 10 8.8.8.8 > output.log'

وقتی دستور را اجرا می کنید tmux در بالا او دستور را اجرا خواهد کرد پینگ در یک پوشش جداگانه و آن را در پس زمینه نگه دارید. با استفاده از این روش می توانید هر دستور Linux را در پس زمینه اجرا کنید.

مرتبط: نحوه نصب و پیکربندی Tmux برای Linux

دستورات Linux خود را در پس زمینه بگذارید

داشتن توانایی اجرای دستورات در پس زمینه ، مدیریت سیستم را برای مدیران بیشتر می کند. می توانید کارهای خود را به روش های مختلف پس زمینه کنید. ویژگی های Bash مانند است & و Ctrl + Z راحت است ، اما سیستم با بستن درب عملکرد پس زمینه را از بین می برد. از طرف دیگر ، ابزارهایی مانند نه و انکار می کنم دستور را اجرا می کند حتی هنگام خروج یا خارج شدن از پوسته.

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



منبع

Author: terem

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *