展開
            湖北國聯(lián)計算機(jī)科技有限公司
          1. 首頁HOME
          2. 公司簡介INTRODUCTION
          3. 安全防御DEFENSE
          4. 軟件開發(fā)SOFTWARE
          5. 物聯(lián)網(wǎng)IOT
          6. 運(yùn)行維護(hù)SRE
          7. 成功案例CASE
          8. 聯(lián)系我們CONTACT
          9. Technology Services |技術(shù)服務(wù)

            Linux at命令詳解
            來源:腳本之家-良許Linux 時間:2021-11-13


            生活中,我們有太多場景需要使用到鬧鐘,比如早上7點(diǎn)起床,下午4點(diǎn)開會,晚上8點(diǎn)購物,等等。

            在 Linux 系統(tǒng)里,我們同樣也有類似的需求。比如我們想在凌晨1點(diǎn)將文件上傳服務(wù)器,或者在晚上10點(diǎn)確認(rèn)系統(tǒng)狀態(tài),等等。

            但我們不可能一直守在電腦前,畢竟我們也需要下班/睡覺,還要陪女朋友(new一個也行)。而且即使在上班期間,如果到點(diǎn)了還需要人工操作,未免效率太低了。

            at命令就是為這個需求而誕生的。使用at命令,你可以在特定時間自動完成你所設(shè)定的任務(wù),也可以實現(xiàn)自動化,非常方便快捷!

            一、安裝at命令

            一般來講,大部分Linux發(fā)行版都已經(jīng)安裝了at命令,不確定的話可以使用at-V命令查看,如果有版本返回,說明就可以正常使用at命令。

            $ at -V

            at version 3.1.13

            你可能還需要啟動at守護(hù)進(jìn)程,稱為atd。在大多數(shù)Linux系統(tǒng)上,你可以使用systemctl命令啟用atd服務(wù)并將它們設(shè)置為從現(xiàn)在開始自動啟動:

            $ sudo systemctl enable --now atd

            二、at命令基本用法

            1、語法

            at [選項] [日期時間]

            2、選項

            -f:指定包含具體指令的任務(wù)文件

            -q:指定新任務(wù)的隊列名稱

            -l:顯示待執(zhí)行任務(wù)的列表

            -d:刪除指定的待執(zhí)行任務(wù)

            -m:任務(wù)執(zhí)行完成后向用戶發(fā)送E-mail

            3、參數(shù)

            日期時間:指定任務(wù)執(zhí)行的日期時間

            三、使用at命令交互性安排任務(wù)

            想想看,我們平時是怎么使用鬧鐘這個工具的?首先我們點(diǎn)擊鬧鐘軟件上的加號,然后再設(shè)定時間,再在備注里輸入鬧鐘的目的。

            使用 at 命令交互性安排任務(wù)也是一樣的道理。首先你輸入at命令,然后再跟上具體的時間。

            回車之后就進(jìn)入到交互性界面,你再具體輸入要做的事情(命令),最后以結(jié)束輸入,任務(wù)就設(shè)置好了。

            例如,你想在早上11:20的時候,在at-test.txt文檔里寫入hello world這句話,可以這樣交互性輸入:

            $ at 11:20 AM

            warning: commands will be executed using /bin/sh

            at> echo "hello world" > ~/at-test.txt

            at>

            job 3 at Mon Jul 26 11:20:00 2021

            如上所示,at命令使用直觀和自然的時間格式。你不需要知道24小時制或?qū)r間轉(zhuǎn)換為UTC格式。通常,可以直接使用我們生活中常用的單詞它就能理解,例如noon、1:30PM、13:37等。

            在11:20過后,你可以使用cat命令檢查一下at-test.txt文件是否有內(nèi)容寫入:

            $ cat ~/at-test.txt

            hello world

            四、使用 at 命令安排任務(wù)

            如果你不想使用交互的方式來給at命令安排任務(wù),可以使用管道將echo或printf的值傳遞給at命令。

            比如,我想從現(xiàn)在開始一分鐘后向at-test.txt文件寫入hello again語句:

            $ echo "echo 'hello again' >> ~/at-test.txt" | at now +1 minute

            一分鐘后,驗證新命令是否已執(zhí)行:

            $ cat ~/at-test.txt

            hello world

            hello again

            五、時間表達(dá)式

            前面提到過,at命令使用的是我們?nèi)粘I钪兴褂玫臅r間格式,非常方便:

            YYMMDDhhmm[.ss] (縮寫年、月、日、小時、分鐘[秒])

            CCYYMMDDhhmm[.ss] (完整年、月、日、小時、分鐘和[秒])

            now

            midnight

            noon

            teatime`(下午4點(diǎn))

            AM

            PM

            時間和日期可以是絕對的,也可以添加一個加號 ( + ) 使它們相對于現(xiàn)在。在指定相對時間時,下面這些日常生活中所使用的詞匯都可以使用:

            minutes

            hours

            days

            weeks

            months

            years

            下面是一些at命令有效表達(dá)式的示例:

            $ echo "rsync -av /home/tux me@myserver:/home/tux/" | at 3:30 AM tomorrow

            $ echo "/opt/batch.sh ~/Pictures" | at 3:30 AM 08/01/2022

            $ echo "echo hello" | at now + 3 days

            六、查看 at 任務(wù)隊列

            隨時時間的推移,我們可以忘記在at命令隊列時設(shè)置了多少個任務(wù),如果你想進(jìn)行查看,可以使用atq命令:

            $ atq

            10 Thu Jul 29 12:19:00 2021 a tux

            9  Tue Jul 27 03:30:00 2021 a tux

            7  Tue Jul 27 00:00:00 2021 a tux

            要從隊列中刪除任務(wù),請使用atrm命令和任務(wù)編號。例如要刪除任務(wù) 7 :

            $ atrm 7

            $ atq

            10 Thu Jul 29 12:19:00 2021 a tux

            9  Tue Jul 27 03:30:00 2021 a tux

            如果想要查看計劃任務(wù)中的具體內(nèi)容,就必須查看at spool。只有root用戶才能查看at spool,因此你必須使用sudo來查看spool或cat任務(wù)的內(nèi)容。

            七、小結(jié)

            at命令是避免忘記在將來特定時間的任務(wù)或在你離開時讓計算機(jī)為你運(yùn)行任務(wù)的非常好的方式。與cron命令不一樣的是,它不需要使任務(wù)從現(xiàn)在一直循環(huán)運(yùn)行,因此它的語法比cron簡單得多。

            下次你想在下班后讓系統(tǒng)為你做個工作,可以試試at命令。


            荊州地區(qū)政府網(wǎng)站建設(shè) 解決方案 專業(yè)團(tuán)隊 騰訊第三方平臺 地址:湖北省荊州市沙市區(qū)荊沙大道楚天都市佳園一期C區(qū)29棟112       地址:湖北省松滋市新江口街道才知文化廣場1幢1146-1151室     郵編:434200 聯(lián)系電話:0716-6666211     網(wǎng)站編輯部郵箱:business@gl-ns.com 鄂公網(wǎng)安備 42100202000212號 備案號:鄂ICP備2021015094號-1     企業(yè)名稱:湖北國菱計算機(jī)科技有限公司
            2020国自产拍精品免费观看,国产经典aⅴ三级观看,国产午夜99视频精品免费播放,亚洲开心网激情五月,91久久精品无码,久久综合香蕉久久久久久久,亚洲中亚洲中文字幕无线乱码,在线播放对白太大了