جهان لینوکس پر شده است با چیزهای جالب و مفید، بیشتر ما به سراغ موارد جالب میرویم و آنها را پیدا می کنیم. در اینجا ما تلاش کرده ایم که نکاتی را در 3 ترفند کوچک آموزش خواهیم داد.
همچنین توصیه میشود مطالعه کنید :
20 دستور بامزه و سرگرم کننده در لینوکس
اجرای بازی قدیمی Snake (بازی مار) در ترمینال لینوکس
دوستان خود را با این ترمینال هکری قلابی Hollywood تحت تاثیر قرار دهید
1. نحوه ی زمانبندی Job در لینوکس بدون Cron
زمانبندی یک job یا یک دستور در لینوکس سرنام cron می باشد. هر زمان که ما نیاز به زمانبندی یک job داریم، ما cron را صدا می زنیم، اما آیا شما می دانید که ما میتوان یک job را بدون استفاده از cron زمانبندی کرد؟ شما می توانید آنرا به صورت زیر انجام دهید.
یک دستور را هر 5 ثانیه یکبار اجرا کنید و خروجی آنرا در فایلی به نام date.txt بنویسید. برای آرشیو کردن این سناریو، ما نیاز داریم اسکریپت خطی زیر را بر روی خط فرمان به صورت مستقیم اجرا کنیم.
آناتومی بالا یک اسکریپت خطی است:
1. While true : پرسیدن اسکریپت برای اجرای شرط درستی، آن به عنوان حلقه ای که دستوری را به صورت مکرر اجرا می کند استفاده می شود.
2. Do : برای انجام آنچه در ادامه آورده شده است، دستور یا مجموعه دستوراتی که در ادامه بیان می شود را اجرا می کند.
3. Date>>date.txt : در اینجا خروجی دستور date در یک فایل نوشته می شود. همچنین توجه داشته باشید که ما از >> استفاده کرده ایم و نه >.
4. >> به ما اطمینان میدهد که فایل date.txt هربار که اسکریپت اجرا می شود بازنویسی نخواهد شد. تنها به انتهای فایل اضافه خواهد شد. در حالیکه > برروی فایل به صورت مکرر بانویسی خواهد کرد.
5. Sleep 5 : آن شل را برای 5 ثانیه قبل از اجرای دوباره ی دستور نگه میدارد. نکته اینکه زمان در اینجا همیشه به ثانیه می باشد. اگر شما می خواهید دستوری را هر 5 دقیقه اجرا کنید شما باید از(6*60) 360 استفاده کنید.
6. Done : انتهای حلقه را مشخص می کند.
7. & : کل پروسس حلقه را در background قرار می دهد.
به طور مشابه ما می توانیم هر اسکریپتی را به همین صورت اجرا کنیم. در اینجا دستوری برای صدازدن یک اسکریپت بعد از هر 100 ثانیه وجود دارد که نا م اسکریپت script_name.sh می باشد.
همچنین لازم به ذکر است که اسکریپت بالا بایددر دایرکتوری ای که اسکریپت در آن قراردارد اجرا شود، در غیر اینصورت شما نیاز دارید مسیر کامل آنرا صدا بزنید(/home/$USER/…/script_name.sh). syntax صدازدن اسکریپت در اینتروال گفته شده به صورت زیر است.
نتیجه گیری : خط بالا جایگزین cron نیست، به دلیل اینکه cron ابزاری است که یک مجموعه ای از گزینه هایی را ساپورت می کند که بسیار انعطاف پذیر و قابل تنظیم است. اما اگر ما می خواهیم موارد خاصی را تست کنیم و یا معیارمان I/O می باشد، دستور بالا به هدف مان کمک خواهد کرد.
همچنین توصیه میشود مطالعه کنید :
دستور cronjob و crontab در لینوکس برای اتوماتیک کردن کارها
2. نحوه ی پاک کردن ترمینال بدون استفاده ار دستور clear
برای پاک کردن صفحه چه کار میکنید؟ خوب شما ممکن است فکر کنید که این سوال احمقانه ای است. خوب همه ی ما با دستور clear آشنا هستیم. اما اگر ما عادت به استفاده از ctrl+l برای پاک کردن ترمینال داشته باشیم، زمان زیادی را صرفه جویی خواهیم کرد.
کلیدهای ctrl+l همان تاثیر دستور clear را خواهند داشت. بنابراین از دفعه ی بعد برای پاک کردن صفحه ی ترمینال از ctrl+l استفاده کنید.
نتیجه گیری : به دلیل اینکه ctrl+l یک کلید ترکیبی است، بنابراین ما نمی توانیم آنرا در یک اسکریپت استفاده کنیم. اگر ما نیازبه پاک کردن صفحه در یک اسکریپت شل داریم، می توانیم از دستور clear استفاده کنیم. برای موارد دیگر استفاده از ctrl+l مفیدتر خواهد بود.
3. اجرای یک دستور و برگشتن به دایرکتوری که در آن بودید به صورت خودکار
بسیاری از مردم این را می دانند که شما ممکن است یک دستور را اجرا کنید و به دایرکتوری جاری برگردید. برای این کار نیاز دارید که آن دستور را در پرانتز اجرا کنید (and).
به مثال زیر نگاهی بیاندازید:
نمونه خروجی
ابتدا به دایرکتوری Downlads ،cd می کند و سپس به دایرکتوری home برمی گردد. ممکن است شما فکر کنید که دستور اجرا نشده است و به دلایلی هیچ خطایی نیز نشان داده نشده است، و تغییری در prompt رخ نداده است. اجازه دهید کمی بیشتر بررسی کنیم...
نمونه خروجی
بنابراین در دستور بالا ابتدا به دایرکتوری Downlaods (دانلود) cd شده است و سپس محتوای آن دایرکتوری لیست شده و به دایرکتوری جاری بازگشته است. همچنین آن ثابت می کند که دستور با موفقیت اجرا شده است. شما می توانید هر دستور ی را در پرانتز اجرا کرده و به دایرکتوری جاری تان برگردید.
همچنین توصیه میشود مطالعه کنید :
20 دستور بامزه و سرگرم کننده در لینوکس
اجرای بازی قدیمی Snake (بازی مار) در ترمینال لینوکس
دوستان خود را با این ترمینال هکری قلابی Hollywood تحت تاثیر قرار دهید
1. نحوه ی زمانبندی Job در لینوکس بدون Cron
زمانبندی یک job یا یک دستور در لینوکس سرنام cron می باشد. هر زمان که ما نیاز به زمانبندی یک job داریم، ما cron را صدا می زنیم، اما آیا شما می دانید که ما میتوان یک job را بدون استفاده از cron زمانبندی کرد؟ شما می توانید آنرا به صورت زیر انجام دهید.
یک دستور را هر 5 ثانیه یکبار اجرا کنید و خروجی آنرا در فایلی به نام date.txt بنویسید. برای آرشیو کردن این سناریو، ما نیاز داریم اسکریپت خطی زیر را بر روی خط فرمان به صورت مستقیم اجرا کنیم.
کد:
$ while true; do date >> date.txt ; sleep 5 ; done &
آناتومی بالا یک اسکریپت خطی است:
1. While true : پرسیدن اسکریپت برای اجرای شرط درستی، آن به عنوان حلقه ای که دستوری را به صورت مکرر اجرا می کند استفاده می شود.
2. Do : برای انجام آنچه در ادامه آورده شده است، دستور یا مجموعه دستوراتی که در ادامه بیان می شود را اجرا می کند.
3. Date>>date.txt : در اینجا خروجی دستور date در یک فایل نوشته می شود. همچنین توجه داشته باشید که ما از >> استفاده کرده ایم و نه >.
4. >> به ما اطمینان میدهد که فایل date.txt هربار که اسکریپت اجرا می شود بازنویسی نخواهد شد. تنها به انتهای فایل اضافه خواهد شد. در حالیکه > برروی فایل به صورت مکرر بانویسی خواهد کرد.
5. Sleep 5 : آن شل را برای 5 ثانیه قبل از اجرای دوباره ی دستور نگه میدارد. نکته اینکه زمان در اینجا همیشه به ثانیه می باشد. اگر شما می خواهید دستوری را هر 5 دقیقه اجرا کنید شما باید از(6*60) 360 استفاده کنید.
6. Done : انتهای حلقه را مشخص می کند.
7. & : کل پروسس حلقه را در background قرار می دهد.
به طور مشابه ما می توانیم هر اسکریپتی را به همین صورت اجرا کنیم. در اینجا دستوری برای صدازدن یک اسکریپت بعد از هر 100 ثانیه وجود دارد که نا م اسکریپت script_name.sh می باشد.
همچنین لازم به ذکر است که اسکریپت بالا بایددر دایرکتوری ای که اسکریپت در آن قراردارد اجرا شود، در غیر اینصورت شما نیاز دارید مسیر کامل آنرا صدا بزنید(/home/$USER/…/script_name.sh). syntax صدازدن اسکریپت در اینتروال گفته شده به صورت زیر است.
کد:
$ while true; do /bin/sh script_name.sh ; sleep 100 ; done &
نتیجه گیری : خط بالا جایگزین cron نیست، به دلیل اینکه cron ابزاری است که یک مجموعه ای از گزینه هایی را ساپورت می کند که بسیار انعطاف پذیر و قابل تنظیم است. اما اگر ما می خواهیم موارد خاصی را تست کنیم و یا معیارمان I/O می باشد، دستور بالا به هدف مان کمک خواهد کرد.
همچنین توصیه میشود مطالعه کنید :
دستور cronjob و crontab در لینوکس برای اتوماتیک کردن کارها
2. نحوه ی پاک کردن ترمینال بدون استفاده ار دستور clear
برای پاک کردن صفحه چه کار میکنید؟ خوب شما ممکن است فکر کنید که این سوال احمقانه ای است. خوب همه ی ما با دستور clear آشنا هستیم. اما اگر ما عادت به استفاده از ctrl+l برای پاک کردن ترمینال داشته باشیم، زمان زیادی را صرفه جویی خواهیم کرد.
کلیدهای ctrl+l همان تاثیر دستور clear را خواهند داشت. بنابراین از دفعه ی بعد برای پاک کردن صفحه ی ترمینال از ctrl+l استفاده کنید.
نتیجه گیری : به دلیل اینکه ctrl+l یک کلید ترکیبی است، بنابراین ما نمی توانیم آنرا در یک اسکریپت استفاده کنیم. اگر ما نیازبه پاک کردن صفحه در یک اسکریپت شل داریم، می توانیم از دستور clear استفاده کنیم. برای موارد دیگر استفاده از ctrl+l مفیدتر خواهد بود.
3. اجرای یک دستور و برگشتن به دایرکتوری که در آن بودید به صورت خودکار
بسیاری از مردم این را می دانند که شما ممکن است یک دستور را اجرا کنید و به دایرکتوری جاری برگردید. برای این کار نیاز دارید که آن دستور را در پرانتز اجرا کنید (and).
به مثال زیر نگاهی بیاندازید:
کد:
avi@deb:~$ (cd /home/avi/Downloads/)
کد:
avi@deb:~
کد:
avi@deb:~$ (cd /home/avi/Downloads/ && ls -l)
کد:
-rw-r----- 1 avi avi 54272 May 3 18:37 text1.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text2.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text3.txt avi@deb:~$