မြန်မာ
Appearance
မြန်မာ
Appearance
Task Scheduler (အလုပ်စီစဉ်သူ) သည် WSL တွင် ပုံမှန်အလုပ်များကို အလိုအလျောက်လုပ်ဆောင်ရန် အသုံးပြုပြီး၊ ထပ်ခါတလဲလဲ လက်ဖြင့်ပြုလုပ်ရသည့် ပြုပြင်ထိန်းသိမ်းမှုလုပ်ငန်းများကို ရှောင်ရှားနိုင်သည်။ ၎င်းသည် ရှုပ်ထွေးသော command-line parameters များကိုမှတ်သားစရာမလိုဘဲ အချိန်ဇယားဆွဲထားသောအလုပ်များကို ဖန်တီးစီမံနိုင်သည့် အမြင်အာရုံဆိုင်ရာ စီမံခန့်ခွဲမှုမျက်နှာပြင်ကို ပေးဆောင်သည်။
ဤလုပ်ဆောင်ချက်၏ နမူနာအခြေအနေများ-
အလုပ်အားလုံးကို Windows Task Scheduler ၏ \WSLDashboard\UserTasks\ လမ်းကြောင်းအောက်တွင် စုစည်းထားပြီး၊ ဗဟိုချုပ်ကိုင်မှုဖြင့် ကြည့်ရှုစီမံနိုင်သည်။ သင်သည် မျက်နှာပြင်တွင် အလုပ်အခြေအနေ (အဆင်သင့် / လုပ်ဆောင်နေသည် / ပိတ်ထားသည်) ကို အချိန်နှင့်တပြေးညီ ကြည့်ရှုနိုင်သည်။
အောက်ပါ community repository မှ နမူနာ script များ (distribution backup) ကို ဒေါင်းလုဒ်လုပ်၍ လျင်မြန်စွာ စတင်နိုင်ပါသည်:
https://github.com/owu/wsl-community
၎င်းသည် အသုံးပြုသူများ ပူးပေါင်းတည်ဆောက်ထားသော code repository တစ်ခုဖြစ်ပါသည်။ Pull Request တင်သွင်းခြင်းဖြင့် script များကို မျှဝေရန် သို့မဟုတ် အကောင်းဆုံးအလေ့အကျင့်များကို မျှဝေရန် ကြိုဆိုပါသည်။
အချိန်ဇယားဆွဲထားသောအလုပ်တစ်ခုစီအတွက် လုပ်ဆောင်ရန် command (script သို့မဟုတ် executable) ကို ဖွဲ့စည်းနိုင်ပြီး၊ အောက်ပါရွေးချယ်စရာများကို ပံ့ပိုးပေးသည်-
| ဖွဲ့စည်းမှုအမျိုးအစား | ရှင်းလင်းချက် |
|---|---|
| Execute Command | လုပ်ဆောင်ရန် script သို့မဟုတ် executable လမ်းကြောင်း။ .bat, .ps1, .cmd, .exe, .py စသည့်ပုံစံများကို ပံ့ပိုးသည်။ "Browse" ခလုတ်မှတစ်ဆင့် ဖိုင်ကိုရွေးချယ်နိုင်သည်။ |
| Command Parameters | Command သို့ ပေးပို့ရန် ထပ်ဆောင်း parameters များ (ချန်လှပ်နိုင်သည်)။ |
| အက်မင်အခွင့်အာဏာများ | အမှန်ခြစ်ပေးပါက၊ အလုပ်သည် UAC မြှင့်တင်မှုလိုအပ်သောလုပ်ငန်းများအတွက် အမြင့်ဆုံးအခွင့်အာဏာများဖြင့် လုပ်ဆောင်ပါမည်။ |
အလုပ်တစ်ခုကိုဖန်တီးပြီးနောက်၊ သင်သည် အောက်ပါလုပ်ဆောင်ချက်များကို လုပ်ဆောင်နိုင်သည်-
| လုပ်ဆောင်ချက် | ရှင်းလင်းချက် |
|---|---|
| ချက်ချင်းလုပ်ဆောင်ပါ | အချိန်ဇယားစည်းမျဉ်းများကို မသက်ဆိုင်ဘဲ အလုပ်ကိုချက်ချင်း အတင်းအကြပ် run ပါ။ |
| ဖွင့်ပါ/ပိတ်ပါ | အလုပ်၏ အလိုအလျောက်အချိန်ဇယားကို ခေတ္တရပ်နားရန် သို့မဟုတ် ပြန်လည်စတင်ရန်။ |
| ဖျက်ပါ | Task Scheduler မှ အလုပ်ကိုဖယ်ရှားပါ။ |
အလုပ်အချိန်ဇယားဆွဲခြင်းသည် စံ 5-အကွက် Cron Expression ကို အသုံးပြု၍ လုပ်ဆောင်မှုစည်းမျဉ်းများကို သတ်မှတ်ပြီး၊ ပုံစံမှာ အောက်ပါအတိုင်းဖြစ်သည်-
မိနစ် နာရီ ရက် လ ရက်သတ္တပတ်| အကွက် | တန်ဖိုးအကွာအဝေး | ရှင်းလင်းချက် |
|---|---|---|
| မိနစ် | 0 - 59 | နာရီတိုင်း၏ မည်သည့်မိနစ်တွင် လုပ်ဆောင်ရန် |
| နာရီ | 0 - 23 | နေ့တိုင်း၏ မည်သည့်နာရီတွင် လုပ်ဆောင်ရန် |
| ရက် | 1 - 31 | လတိုင်း၏ မည်သည့်နေ့တွင် လုပ်ဆောင်ရန် |
| လ | 1 - 12 | နှစ်တိုင်း၏ မည်သည့်လတွင် လုပ်ဆောင်ရန် |
| ရက်သတ္တပတ် | 0 - 7 | 0 နှင့် 7 နှစ်ခုလုံးသည် တနင်္ဂနွေနေ့ကို ကိုယ်စားပြုသည် |
အကွက်တစ်ခုစီသည် အောက်ပါ syntax ကို ပံ့ပိုးသည်-
* —— တန်ဖိုးအားလုံးနှင့် ကိုက်ညီသည် (ဥပမာ * * * * * ဆိုသည်မှာ မိနစ်တိုင်း တစ်ကြိမ်လုပ်ဆောင်သည်)*/N —— N ယူနစ်တိုင်းတွင် တစ်ကြိမ်လုပ်ဆောင်သည် (ဥပမာ */5 * * * * ဆိုသည်မှာ 5 မိနစ်တိုင်း တစ်ကြိမ်လုပ်ဆောင်သည်)0 9 * * 1 ဆိုသည်မှာ တနင်္လာနေ့တိုင်း နံနက် 9:00 တွင် လုပ်ဆောင်သည်)မှတ်ချက်: ကော်မာခြားထားသော တန်ဖိုးများစွာ (
1,15ကဲ့သို့) နှင့် အကွာအဝေး expression များ (1-5ကဲ့သို့) ကို ပံ့ပိုးမထားပါ။ နောက်ထပ် ကန့်သတ်ချက်များအတွက် အောက်ဖော်ပြပါ သတိပြုရန် ကိုကြည့်ပါ။
ဤဆော့ဖ်ဝဲသည် မူရင်း Cron daemon ကို မလုပ်ဆောင်ဘဲ၊ Cron expression ကို Windows Task Scheduler (schtasks.exe) ၏ trigger parameters များသို့ ဘာသာပြန်ပေးသည်။ တိကျသော mapping အတွက်၊ parser တွင် အောက်ပါ 7 ပေါင်းစပ်မှုပုံစံများ ကိုသာ hardcode လုပ်ထားပြီး ပံ့ပိုးထားကာ၊ ၎င်းတို့သည် အချိန်ဇယားဆွဲထားသောအလုပ်အခြေအနေအများစုကို လွှမ်းခြုံပေးသည်-
| # | ပုံစံ | ရှင်းလင်းချက် | သင့်လျော်သောအခြေအနေ |
|---|---|---|---|
| 1 | * * * * * | မိနစ်တိုင်း လုပ်ဆောင်ပါ | စောင့်ကြည့်ခြင်း၊ အချိန်နှင့်တပြေးညီ ထောက်လှမ်းခြင်းလုပ်ငန်းများ |
| 2 | */N * * * * | N မိနစ်တိုင်း တစ်ကြိမ်လုပ်ဆောင်ပါ | အချိန်ကာလအလိုက် စစ်ဆေးခြင်းလုပ်ငန်းများ |
| 3 | M * * * * | နာရီတိုင်း၏ M မိနစ်တွင် လုပ်ဆောင်ပါ (ဥပမာ 3 * * * *) | နာရီပိုင်းလုပ်ငန်းများ |
| 4 | M H * * * | နေ့တိုင်း H နာရီ M မိနစ်တွင် လုပ်ဆောင်ပါ (ဥပမာ 0 3 * * *) | နေ့စဉ်ထိန်းသိမ်းမှု၊ ဥပမာ နေ့တိုင်း အရုဏ်တက်ချိန်တွင် log များရှင်းလင်းခြင်း |
| 5 | M H * * DOW | ရက်သတ္တပတ်တိုင်း သတ်မှတ်ရက်တွင် H နာရီ M မိနစ်၌ လုပ်ဆောင်ပါ (ဥပမာ 0 12 * * 1) | အပတ်စဉ်လုပ်ငန်းများ၊ ဥပမာ တနင်္လာနေ့တိုင်း data backup ပြုလုပ်ခြင်း |
| 6 | M H D * * | လတိုင်း သတ်မှတ်ရက်စွဲတွင် H နာရီ M မိနစ်၌ လုပ်ဆောင်ပါ | လစဉ်လုပ်ငန်းများ၊ ဥပမာ လတိုင်း၏ 1 ရက်နေ့တွင် အစီရင်ခံစာထုတ်ခြင်း |
| 7 | M H D MON * | နှစ်တိုင်း သတ်မှတ်လနှင့်ရက်စွဲတွင် H နာရီ M မိနစ်၌ လုပ်ဆောင်ပါ | နှစ်စဉ်လုပ်ငန်းများ၊ ဥပမာ သတ်မှတ်လတွင် လုပ်ဆောင်ခြင်း |
Expression သည် အထက်ပါ 7 ပုံစံမှ တစ်ခုမှမဟုတ်ပါက၊ system မှ ၎င်းကို
Unsupported cron patternအဖြစ် သတ်မှတ်ပြီး ဖန်တီးရန် ငြင်းပယ်ပါမည်။
အောက်ခြေတွင် Windows Task Scheduler ကို အခြေခံထားသောကြောင့်၊ ဤဆော့ဖ်ဝဲ၏ Cron parser နှင့် စံ Linux Cron အကြား အောက်ပါကွာခြားချက်များရှိသည်-
,) နှင့် အကွာအဝေး (-) ကို ပံ့ပိုးမထားပါ စံ Cron သည် ကော်မာဖြင့် သီးခြားအချိန်အမှတ်များစွာကို သတ်မှတ်ခွင့်ပြုသည် (ဥပမာ 1,15,30 * * * * ဆိုသည်မှာ 1၊ 15၊ 30 မိနစ်များ)၊ သို့မဟုတ် တုံးတိုဖြင့် အကွာအဝေးကို သတ်မှတ်ခွင့်ပြုသည် (ဥပမာ 1-5 * * * * ဆိုသည်မှာ 1 မှ 5 မိနစ်အထိ)။
ဤဆော့ဖ်ဝဲ၏ ကန့်သတ်ချက်: အကွက်တစ်ခုစီတွင် ဂဏန်းတစ်လုံးတည်း၊ ကြယ်ပွင့် (*) သို့မဟုတ် ခြေလှမ်း (*/N) ကိုသာ ဖြည့်နိုင်ပြီး၊ ကော်မာနှင့် တုံးတိုကို ပံ့ပိုးမထားပါ။
စံ Cron သည် မည်သည့်အကွက်ကိုမဆို လွတ်လပ်စွာ ပေါင်းစပ်ခွင့်ပြုသည် (ဥပမာ * 3 * * * ဆိုသည်မှာ နေ့တိုင်း မနက် 3 နာရီ၏ မိနစ်တိုင်း)၊ သို့သော် ဤဆော့ဖ်ဝဲသည် အထက်တွင်ဖော်ပြထားသော ပုံသေ 7 ပုံစံကိုသာ ပံ့ပိုးပြီး၊ ဤအကွာအဝေးပြင်ပရှိ expression များကို ငြင်းပယ်ပါမည်။
စံ Cron တွင်၊ */5 * * * * သည် နာရီ၏ 0၊ 5၊ 10၊ 15... မိနစ်များနှင့် တင်းကျပ်စွာ ညှိထားသည်။ ဤဆော့ဖ်ဝဲသည် ၎င်းကို Windows ၏ /SC MINUTE /MO 5 parameter သို့ ဘာသာပြန်ပြီး၊ Windows ၏ လုပ်ဆောင်ချက်ယုတ္တိမှာ အလုပ်ကို ဖန်တီးခြင်း သို့မဟုတ် စတင်အသုံးပြုသည့် အချိန်မှစ၍ ကြားကာလကို တွက်ချက်ခြင်း ဖြစ်သည်။
ဥပမာအားဖြင့်၊ သင်သည် 10:02 တွင် 5 မိနစ်တိုင်းလုပ်ဆောင်သောအလုပ်ကို သိမ်းဆည်းပြီး စတင်အသုံးပြုပါက၊ ၎င်းသည် ပထမဆုံး 10:07 တွင် လုပ်ဆောင်မည်ဖြစ်ပြီး၊ ထို့နောက် 10:12 တွင် လုပ်ဆောင်ကာ၊ စံနာရီ၏ 10:05 နှင့် ညှိမည်မဟုတ်ပါ။