خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
آموزش استفاده از دستور watch در لینوکس
برای اجرای مکرر یک دستور یا کار در فواصل زمانی منظم در حین کار با لینوکس، می توانید از cron job یا bash scripts استفاده کنید. اما لینوکس یک راه حل ساده تر و Built-in به نام دستور watch را ارائه می دهد.
در این آموزش، syntax دستور watch، نحوه کارکرد آن و کارهای مختلفی که می تواند به شما کمک کند را یاد خواهید گرفت.
دستور watch یک ابزار Built-in در لینوکس است که برای اجرای دستورات تعریف شده توسط کاربر در فواصل زمانی منظم استفاده می شود. به طور موقت تمام محتوای Terminal را پاک می کند و خروجی دستور را به همراه تاریخ و زمان جاری سیستم نمایش می دهد.
به طور پیش فرض، فرمان watch هر دو ثانیه آپدیت می شود. Ctrl+C را فشار دهید تا دستور را قطع کنید.
دستور watch زمانی مفید است که باید تغییرات خروجی دستور را در طول زمان مانیتور کنید که شامل میزان استفاده از دیسک یا Disk Usage و uptime سیستم و tracking error ها است.
با options ها در ادامه بیشتر آشنا می شویم. گزینه هایی که می توانند دستور watch را تحت تاثیر قرار دهند. با ذکر مثال خیلی محسوس تر با آنها آشنا می شوید.
Command هم در واقع دستوری است که توسط شما اجرا می شوید و می خواهید بصورت مکرر اجرا شود.
Options ها یا گزینه هایی که در دستور watch می توانید استفاده کنید:
n- به شما امکان می دهد فاصله زمانی بین آپدیت های خروجی را مشخص کنید.
d- تفاوت بین آپدیت های خروجی را هایلایت میکند.
g- هنگامی که خروجی فرمان تعریف شده توسط کاربر تغییر می کند، از دستور watch خارج می شود.
t- در واقع header ای که فاصله زمانی، دستور و زمان، تاریخ جاری را نشان می دهد حذف می کند.
b- در صورت خروج فرمان با خطا یک بوق بیپ یا sound alert پخش می شود.
p- سعی می کند دستور را پس از تعداد ثانیه های دقیق تعریف شده در گزینه n- اجرا کند.
e- آپدیت های خروجی را در صورت خطا متوقف میکند و پس از فشار دادن هر کلیدی، از دستور خارج میشود.
c- توالی رنگ و استایل ANSI را تفسیر و معنی می کند.
x- دستور تعریف شده توسط کاربر را به exec منتقل می کند و نیاز به quotes اضافی را کاهش می دهد.
h- راهنما
v- نمایش ورژن
یک بازه زمانی سفارشی برای اجرای یک دستوری تعریف شده توسط کاربر(user-defined) را تنظیم کنید و با استفاده از گزینه n- خروجی را نشان دهید:
به عنوان مثال، برای نمایش زمان و تاریخ سیستم در هر 5 ثانیه، دستور زیر را اجرا کنید:
گزینه d- برای هایلات کردن تغییرات بین بهروزرسانیهای خروجی پشت سر هم و متوالی است:
اگر میخواهید تمام مقادیری که تاکنون تغییر کردهاند هایلایت بمانند، به گزینه d- مقدار cumulative را اضافه کنید. به دستور زیر دقت کنید:
اگر در خروجی تغییری رخ دهد با کمک g- می توانید از خروجی بیرون بروید.
به عنوان مثال، افزودن دستور free مصرف RAM سیستم شما را کنترل می کند و در صورت تغییر مقدار را نشان می دهد.
با استفاده از گزینه t- هدر حاوی بازه زمانی، دستور تعریف شده توسط کاربر و زمان جاری سیستم را در خروجی فرمان watch غیرفعال کنید:
برگردیم به مثال نمایش تاریخ و ساعت سیستم، این بار بدون هدر:
در صورتی که آپدیت خروجی به دلیل خطا انجام نشد، دستور watch از beep برای پخش sound alert استفاده میکند.
توجه: اگر پکیج beep را نصب نکردهاید، آن را با دستور sudo apt install beep اضافه کنید.
دستور watch همچنین به شما امکان می دهد از دستورات پیچیده تری که توسط کاربر تعریف شده را با آرگومان ها و گزینه های خاص خود استفاده کنید. یک راه برای انجام این کار استفاده از علامت بک اسلش ('\') است:
استفاده از دستور بالا شما را به خط بعدی در ترمینال می برد، جایی که باید دستور تعریف شده توسط کاربر را اضافه کنید. پس از enter کردن دستور را اجرا می کند. برای مثال:
گزینه دیگر اضافه کردن دستور تعریف شده توسط کاربر در داخل Single quotation marks است:
دستور زیر هم مشابه دستور فوق خواهد بود یعنی همان خروجی را می دهد:
در این آموزش، syntax دستور watch، نحوه کارکرد آن و کارهای مختلفی که می تواند به شما کمک کند را یاد خواهید گرفت.
دستور watch یک ابزار Built-in در لینوکس است که برای اجرای دستورات تعریف شده توسط کاربر در فواصل زمانی منظم استفاده می شود. به طور موقت تمام محتوای Terminal را پاک می کند و خروجی دستور را به همراه تاریخ و زمان جاری سیستم نمایش می دهد.
به طور پیش فرض، فرمان watch هر دو ثانیه آپدیت می شود. Ctrl+C را فشار دهید تا دستور را قطع کنید.
دستور watch زمانی مفید است که باید تغییرات خروجی دستور را در طول زمان مانیتور کنید که شامل میزان استفاده از دیسک یا Disk Usage و uptime سیستم و tracking error ها است.
Linux Watch Command Syntax
syntax دستور watch بصورت زیر می باشد:watch [option] [command]
با options ها در ادامه بیشتر آشنا می شویم. گزینه هایی که می توانند دستور watch را تحت تاثیر قرار دهند. با ذکر مثال خیلی محسوس تر با آنها آشنا می شوید.
Command هم در واقع دستوری است که توسط شما اجرا می شوید و می خواهید بصورت مکرر اجرا شود.
Options ها یا گزینه هایی که در دستور watch می توانید استفاده کنید:
n- به شما امکان می دهد فاصله زمانی بین آپدیت های خروجی را مشخص کنید.
d- تفاوت بین آپدیت های خروجی را هایلایت میکند.
g- هنگامی که خروجی فرمان تعریف شده توسط کاربر تغییر می کند، از دستور watch خارج می شود.
t- در واقع header ای که فاصله زمانی، دستور و زمان، تاریخ جاری را نشان می دهد حذف می کند.
b- در صورت خروج فرمان با خطا یک بوق بیپ یا sound alert پخش می شود.
p- سعی می کند دستور را پس از تعداد ثانیه های دقیق تعریف شده در گزینه n- اجرا کند.
e- آپدیت های خروجی را در صورت خطا متوقف میکند و پس از فشار دادن هر کلیدی، از دستور خارج میشود.
c- توالی رنگ و استایل ANSI را تفسیر و معنی می کند.
x- دستور تعریف شده توسط کاربر را به exec منتقل می کند و نیاز به quotes اضافی را کاهش می دهد.
h- راهنما
v- نمایش ورژن
یک بازه زمانی سفارشی برای اجرای یک دستوری تعریف شده توسط کاربر(user-defined) را تنظیم کنید و با استفاده از گزینه n- خروجی را نشان دهید:
watch -n [interval in seconds] [command]
به عنوان مثال، برای نمایش زمان و تاریخ سیستم در هر 5 ثانیه، دستور زیر را اجرا کنید:
watch -n 5 date
نکته: گزینه n- به شما امکان می دهد از کسری از ثانیه با حداقل فاصله زمانی 0.1 ثانیه استفاده کنید.
گزینه d- برای هایلات کردن تغییرات بین بهروزرسانیهای خروجی پشت سر هم و متوالی است:
watch -d [command]
اگر میخواهید تمام مقادیری که تاکنون تغییر کردهاند هایلایت بمانند، به گزینه d- مقدار cumulative را اضافه کنید. به دستور زیر دقت کنید:
watch -d=cumulative date
اگر در خروجی تغییری رخ دهد با کمک g- می توانید از خروجی بیرون بروید.
watch -g [command]
به عنوان مثال، افزودن دستور free مصرف RAM سیستم شما را کنترل می کند و در صورت تغییر مقدار را نشان می دهد.
watch -g free
با استفاده از گزینه t- هدر حاوی بازه زمانی، دستور تعریف شده توسط کاربر و زمان جاری سیستم را در خروجی فرمان watch غیرفعال کنید:
watch -t [command]
برگردیم به مثال نمایش تاریخ و ساعت سیستم، این بار بدون هدر:
watch -t date
در صورتی که آپدیت خروجی به دلیل خطا انجام نشد، دستور watch از beep برای پخش sound alert استفاده میکند.
watch -b [command]
توجه: اگر پکیج beep را نصب نکردهاید، آن را با دستور sudo apt install beep اضافه کنید.
دستور watch همچنین به شما امکان می دهد از دستورات پیچیده تری که توسط کاربر تعریف شده را با آرگومان ها و گزینه های خاص خود استفاده کنید. یک راه برای انجام این کار استفاده از علامت بک اسلش ('\') است:
watch [options] \
استفاده از دستور بالا شما را به خط بعدی در ترمینال می برد، جایی که باید دستور تعریف شده توسط کاربر را اضافه کنید. پس از enter کردن دستور را اجرا می کند. برای مثال:
watch -n 5 \
echo "watch command example output"
گزینه دیگر اضافه کردن دستور تعریف شده توسط کاربر در داخل Single quotation marks است:
watch [options] '[command]'
دستور زیر هم مشابه دستور فوق خواهد بود یعنی همان خروجی را می دهد:
watch -n 5 'echo "watch command example output"'
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: