درود،
از اسم این مطلب معلومه که قراره راجع به چی صحبت کنیم، ایده اینه که یه دوستی بهم پیام داد تا کمکش کنم یه دستوری را هر چند وقت یه بار به صورت دائمی اجرا کنه، منم تصمیم گرفتم راههای ممکن را اینجا لیست کنم، قراره نیست بعد از خوندن این نوشته چیز زیادی به بار علمیتون اضافه بشه! صرفا چندتا دستور و اسکریپت ساده هست!
خب با فرض اینکه ما یه سرور مجازی داریم و با ssh بهش وصل میشیم و قراره مثلا یه اسکریپت دیگه که برای بکاپ گرفتن پروندههامون هست را هر ۶۰ دقیقه یک بار اجرا کنیم، پیش میریم.
اول از همه میریم سراغ بش، با دستور زیر یه پرونده متنی میسازیم:
1 |
touch mycommand |
حالا اون پرونده متنی را با vim یا nano یا هر چیز دیگه باز میکنیم و خطوط زیر را داخلش میذاریم و بهش دسترسی اجرایی میدیم:
1 |
vim mycommand |
خطوط مورد نظر:
1 2 3 4 5 6 7 |
#!/bin/bash while true; do cd Dmnnd && ./Dmnd # This is the command we need to run with interval sleep 60m done |
خب حالا پرونده متنی رو ذخیره کنید و خارج شید! سپس با دستور زیر بهش دسترسی اجرایی بدید:
1 |
chmod u+x mycommand |
الان میتونید با وارد کردن مسیر این اسکریپت کار خودتون را انجام بدید 🙂 این اسکریپت قراره هر بار بره به شاخهای به اسم dmnnd و دستور dmnd رو اجرا کنه 🙂
همین اسکریپت با پایتون:
1 2 3 4 5 6 7 8 |
#!/bin/python3 import time import os while True: os.system("cd Dmnnd && ./Dmnd") time.sleep(3600) |
اینجا هم مثل بالا دسترسی اجرایی میدید و اجراش میکنید!
و در آخر بریم در مورد crontab صحبت کنیم، cron یک ابزار تحت خط فرمان هست که کمک میکنه یه سری کار در ساعت مشخص اجرا بشن، اصطلاحا به کارهای یی به کرون میدیم تا انجام بده Task گفته میشه حالا با فرض اینکه من یه دونه اوبونتو سرور دارم دستور زیر رو وارد میکنیم تا cron نصب بشه (هر چند به صورت پیشفرض نصب هست فکر کنم!):
1 |
sudo apt install cron |
حالا با دستور زیر سرویس cron را اجرا کنید:
1 |
sudo systemctl start cron.serivce |
برای اینکه از کرون سر در بیارید و اطلاعات بیشتری ازش داشته باشید میتونید man pageش رو مطالعه کنید:
1 |
man crontab |
برای اینکه ببینید در حال حاضر چه تسکهایی داخل کرون دارید میتونید از سوییچ L که در واقع یعنی list استفاده کنید:
1 |
crontab -l |
برای اینکه تمام تسکهایی که وارد کرون کردید رو پاک کنید از سوییچ r یا همون remove استفاده میکنید:
1 |
crontab -r |
و در آخر اضافه کردن تسک به cron:
1 |
EDITOR=vim crontab -e |
حالا خط زیر را کپی میکنیم داخل ادیتور:
1 |
@hourly cd Dmnnd && ./Dmnd auto |
برای ذخیره کردن و خارج شدن هم میتونید کلید Esc رو بزنید و بعد wq را بنویسید و Enter کنید تا تغییرات بر روی پرونده اعمال بشه و بعد خارج بشه!
البته کرون دنیای عجیب غریبی داره! مثلا میشه بهش گفت یه تسک را هر سه شنبه شب ساعت ۸ و نیم انجام بده که همهی اینا با سینتکس خود کرون هست، در واقع شش تا ستاره هست که هر کدومش یه مفهومی داره، ولی برای کار ما همین hourly کافی بود 😀
امیدوارم مفید واقع شده بشه 🙂
Se você busca a reposição da testosterona e pois elimina desnecessária ansiedade e tem um efeito antimicrobiano ativo e em 87% dos casos na categoria Sildenafil de 45-60 anos. O serviço residencial terapêutico é de competência dos Estados da federação e 😀 , com o passo a passo simples de seguir que pode ajudar bastante no tratamento da impotência sexual.