suse linux定時任務

2021-08-25 23:20:25 字數 2995 閱讀 5728

步驟:

1.用vi編寫要執行的shell指令碼t.sh :

例如:#!/bin/bash

echo "i love you !" >>/home/luogen30/desktop/t.txt

* * * * * /home/luogen30/desktop/t.sh

(每秒鐘 執行一次t.sh.)

4.在命令終端 執行:cron restart ,

重啟定時任務.

5.檢視已經編寫的定時任務:

在命令終端輸入:crontab -l

備註:乙個 crontab 檔案包含每個 cron 作業的條目。條目由換行字元分開。每個 crontab 檔案條目包括 6 個字段,它們被空格或製表符以以下格式分開:

minute hour day_of_month month weekday command

這些字段接收以下值:

minute 0 到 59

hour 0 到 23

day_of_month 1 到 31

month 1 到 12

weekday 0 到 6(星期天到星期六)

command shell 命令

必須為每個字段指定乙個值。除了 command 字段,這些字段可以包含以下內容:

* 指定範圍內的乙個數。要在 5 月執行乙個命令,在 月 字段指定 5。

* 兩個被破折號分開的數目表明了包含的範圍。要從星期二到星期五執行 cron 作業,把 2-5 放到 weekday 欄位中。

* 由逗號隔開的數字列表。要在一月第一天和最後一天的執行命令,在日_of_月 欄位中可指定 1,31。

* * (星號),意味著所有的允許值。要每個小時執行乙個作業,在小時字段指定乙個星號。

注: 任一字元前如有乙個反斜槓符號(包括 %)會引起字元被字面上的處理。天的規範是由兩個字段(月的天和星期的天)組成的。如果指定兩者都為元素的乙個列表,這兩個欄位均被包含在其中。例如,如下條目:

0 0 1,15 * 1 command

將在每個月的第一天和第十五天執行 command,還有每個星期一。要僅在乙個欄位中指定天,另一字段應包含 * 。

指定命令

這個 cron 守護程序執行命名於所選日期和時間的第六個欄位中的字段。如果包含乙個 % (百分號)在第六字段,cron 守護程序像命令呼叫一樣處理所有的任務,並使所有的後續任務在標準輸入上可用,除非轉義百分號 (\%)。空行和第乙個非空字元是編號標記(#)將被忽略。如果命令含有反斜槓 (\) 的引數,反斜槓前應加另乙個反斜槓。

注:shell 只執行該命令字段的第一行。所有其它的行作為標準的輸入對於命令可用。

cron 守護程序從 home 目錄中啟動乙個子 shell。如果排程乙個命令執行,這時您尚未登入,並且希望在.profile 檔案中的命令執行,這個命令必須明確的讀取您的 .profile 檔案。

cron 守護程序為每個 shell 提供了乙個預設的環境,定義了 home, logname, shell (=/usr/bin/sh) 和 path (=/usr/bin)。

標誌-e username 編輯使用者的 crontab 檔案的拷貝,或者,如果乙個有效的 username 的 crontab 檔案不存在則建立乙個空的檔案進行編輯。當編輯完成後,檔案被拷貝到 crontab 目錄作為使用者的crontab 檔案。

-l username 列出使用者的 crontab 檔案。

-r username 從 crontab 目錄除去使用者的 crontab 檔案。

-v username 列出使用者 cron 作業的狀態。

安全性審計事件:如果審計子系統已經被正確的配置和啟用,crontab 守護程序就會當每次執行命令時產生以下審計記錄(或事件):

事件 資訊

cron_jobremove 列出哪乙個使用者除去了 cron 作業和除去的時間。

cron_jobadd 列出哪乙個使用者新增了 cron 作業和新增的時間。

請參閱《aix 5l v5.2 安全指南》中的『設定審計』以獲取關於如何適當地選擇和分組審計事件及如何配置審計事件資料集合的詳細資訊。

退出狀態

此命令返回以下退出值:

0 成功完成。

>0 發生錯誤。

示例1. 拷貝乙個名為 mycronjobs 的檔案,到 /var/admn/cron/crontabs 目錄下,輸入以下內容:

crontab mycronjobs

2. 將時間以小時的形式把每個小時寫到 console 中,輸入:

0 * * * * echo the hour is `date` 。

>/dev/console

3. 要在每個星期

一、星期三和星期五的 6:30 a.m. 執行 calendar 命令,輸入:

30 6 * * 1,3,5 /usr/bin/calendar

4. 要在一年的每一天的 6:30 執行 calendar 命令,輸入:

30 6 * * * /usr/bin/calendar

5. 要在八月的每天午夜執行乙個稱為 maintenance 的指令碼,輸入:

0 0 * 8 * /u/harry/bin/maintenance

6. 為命令的標準輸入定義文字,輸入:

turn in your time card.

在 %(百分號)之後定義 wall 命令的標準輸入的文字:

remember to turn in your time card.

檔案/var/adm/cron/fifo 當新的作業的提交是由 crontab 或 at 命令完成時,乙個傳送訊息到 cron 守護程序的命名管道。

/var/spool/cron/crontabs 指定 crontab 緩衝池區域。

/var/adm/cron/cron.allow 指定使用者列表,這些使用者被允許訪問 crontab 命令。

/var/adm/cron/cron.deny 指定使用者列表,這些使用者不被允許訪問 crontab 命令。

相關資訊

auditpr 命令、sh 命令、wall 命令。

cron 守護程序。

linux定時任務 at定時任務

at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...

at定時任務

at的守護程序每60秒檢查一次作業佇列,有作業時檢查作業,時間恰好達到,則執行作業。前提 保證atd程序已經啟動,檢查atd程序是否啟動 ps ef grep atd。atd的命令格式 at 選項 時間 ctrl d 結束at命令的輸入。選項 m 任務完成後給使用者傳送郵件,沒有標準輸出。i atg...

at定時任務

1 at是只執行一次,執行完後任務刪除。at的守護程序atd會以後臺模式執行,檢查作業佇列來執行。2 預設 atd每60秒巡邏一次,有作業時候,檢查作業時間,如果和當前時間一樣,就執行任務 3 在使用at命令的時候,一定要保證他的守護者atd程序的啟動。用ps ef grep atd來檢視atd是否...