歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> linux at命令和batch從輸入或指定文件讀取命令

linux at命令和batch從輸入或指定文件讀取命令

日期:2017/3/2 16:40:43   编辑:Linux服務器

linux at命令和 batch 從標准輸入或一個指定的文件讀取命令,這些命令在以後某個時間用 /bin/sh 執行。

linux at命令允許相當復雜的時間指定,他擴展了 POSIX.2 標准。

他接受 HH:MM 的時間式樣,用來指定在一天的某個時間運行一個作業。 (如果時間已過了則假定為第二天。)

你能指定 midnight (午夜)、 noon (中午) 或 teatime (下午4點),你能用 AM 或 PM 後綴指定一天的上午或下午。

你能給出 month-name day 加上可選的年份的式樣用來指定運行linux at命令的日期,或給出 MMDDYY 、 MM/DD/YY 或 DD.MM.YY 式樣用來指定運行linux at命令的日期。日期的指定必須跟在時間指定的後面。你也能給出象 now + 計數 時間單位 的式樣,這裡的時間單位能是 minutes 、 hours 、 days 或 weeks, 你能給時間加一個 today 後綴來指定linux at命令今天運行作業,能給時間加一個 tomorrow 後綴來指定linux at命令 明天運行作業。

例如,

要在三天以後的下午 4 點運行一個作業,linux at命令時間參數能指定為 4pm + 3 days。

要在7月31日上午10:00運行一個作業, linux at命令時間參數能指定為 10am Jul 31,

要在明天上午1點運行一個作業,linux at命令時間參數能指定為 1am tomorrow。

使用linux at命令定期運行程式 , 2005-12-28 18:16:50 by Johnny

使用linux at命令定期運行程式

1. 使用cron運行任務

cron任務的缺點是計劃要經常運行,如果我們只是想要讓特定任務運行一次呢?

那麼,這時候就要用到at監視程式了。

設置linux at命令非常簡單,指示定運行的時間,那麼就會在哪個時候運行。linux at命令類似打印進程,會把任務放到/var/spool/at目錄中,到指定時間運行他。

linux at命令相當於另一個shell,運行at time命令時,他發送一個個命令,能輸入任意命令或程式。

at now + time命令能在指示任務。

假設處理一個大型數據庫,要在別人不用系統時去處理數據,比如凌晨2點5分。那麼我們就應該先建立/home/mj/airplane腳本管理數據庫,計劃處理/home/mj/air-safe文件中的結果。正常方式是這樣啟動下列命令:

# at 2:05 tomorrow

at> /home/mj/airplane > /home/mj/air-safe

at> Ctrl+D

AT Time中的時間表示方法

時間 例子 說明

Minute at now + 5 minutes 任務在5分鐘後運行

Hour at now + 1 hour 任務在1小時後運行
Days at now + 3 days 任務在3天後運行

Weeks at now + 2 weeks 任務在兩周後運行

Fixed at midnight 任務在午夜運行
Fixed at 10:30pm 任務在晚上10點30分開始

Fixed at 1:00 12/20/04 任務在2004年12月20日凌晨1點開始

2. 查看目前在等待執行的任務

輸入任務後,能使用atq命令能看到目前等待執行的任務,輸出提供了任務號、用戶和任務執行時間等信息。

# atq8 2004-12-15 02:05 a mj

裡面的a表示是at任務還是batch命令生成的任務。

3. 刪除linux at命令任務

刪除一個linux at命令任務比較簡單,使用atrm命令就能輕松解決。

比如我知道了任務的隊列號,那麼就能刪除他:

# atrm 8

就刪除了隊列號為8的at任務了。

at -l 列表

at -r 移除

Copyright © Linux教程網 All Rights Reserved