學會這些linux的“自動化”輕鬆搞定任務
實現“自動化”有如下好處:
- 節省人力,一個 就夠了。
- 在夜晚自動執行可以避開網站流量高峰期,不影響網站白天的效率。
- 準確,設定完善的情況下,不會出差錯。
- 當然最重要的還是省心了,不用頻繁的敲某些 了。
- 等級0表示:表示關機
- 等級1表示:單使用者模式
- 等級2表示:無網路連線的多使用者命令列模式
- 等級3表示:有網路連線的多使用者命令列模式
- 等級4表示:不可用
- 等級5表示:帶圖形介面的多使用者模式
- 等級6表示:重新啟動
開機啟動應該是我們很經常的需求了,我們常需要在開機時就自動執行某些 來開啟服務,程式等,有了它我們不必再在每次開機時輸入同一堆命令。
使用chkconfig命令可以在設定在不同啟動級別下啟動特定的服務或是程式。
先說一下linux的執行級別:
chkconfig的命令如下:
chkconfig --list //命令檢視已設定的開啟自啟動列表。 xxxd 0:off 1:off 2:on ... 6:off //list的結果,表示在xxxd服務在啟動級別為2 3 4 5 的情況下會自動啟動。 chkconfig --add xxxd//向任務列表中新增一個xxxd服務 chkconfig [--level 1/2/../6] xxxd on/off//設定xxxd用服務在n狀態為開/關,[]內省略則在2345級別開啟 chkconfig --del xxxd //將任務列表中的xxxd服務刪除
也可以直接編輯/etc/rc.d/目錄下的檔案來實現開機自啟動。此目錄下有很多檔案,rcn.d是在啟動狀態為n的情況下的啟動資料夾,rc、rc.sysinit、init.d都是系統的模組或系統設定的自啟檔案[夾]。
我們用vim rc.local 編輯 rc.local檔案,來定製自己的自啟計劃。命令十分簡單,就像平常在操作一樣。如/usr/local/apache/bin/apachectl start表示開機自啟動apache伺服器。
at是一個簡單的功能簡單的定時任務程式,它只能進行一次性的定時任務,其用法如下:
#at time //at加時間啟動at命令 at>operation //輸入要執行的操作 at>Ctrl+D //按Ctrl+D退出命令編輯
其time的常見形式如下
at H:m tomorrow //第二天的H點m分 at now + n minutes/hours/days/weeks //在n分/時/天/周後 at midnight //在午夜=-= at H:m pm/am //在當天上午/下午的H點m分
我們也可以在/var/spool/at檔案中檢視at的當前命令。還需要注意的是,linux預設atd程式關閉狀態,需要手動開啟。
linux內建的cron程式能幫我們實現這些需求,cron搭配 ,非常複雜的指令也沒有問題。
cron守護程式是一個由實用程式和配置檔案組成的小型子系統,在幾乎所有類 UNIX 系統上都可以找到某種風格的cron,我們可以用ps aux|grep cron找到crond這個守護程式。
我們經常使用的是crontab命令是cron table的簡寫,它是cron的配置檔案,也可以叫它作業列表,我們可以在以下資料夾內找到相關配置檔案。
我們還可以把指令碼放在/etc/con.hourly、/etc/con.daily、/etc/con.weekly、/etc/con.monthly目錄中,讓它每小時/天/星期、月執行一次。
我們常用的命令如下:
crontab [-u username] //省略使用者表表示操作當前使用者的crontab -e (編輯工作表) -l (列出工作表裡的命令) -r (刪除工作作)
我們用crontab -e進入當前使用者的工作表編輯,是常見的vim介面。每行是一條命令。
crontab的命令構成為 時間+動作,其時間有分、時、日、月、週五種,運算子有
以下是幾個例子。
時間 註釋 0 0 25 12 * //在12月25日的0時0分 */5 * * * * //每過5分鐘 * 4-6 * * * //每天的4 5 6點 * * * * 2,5 //每週二和週五
如果我們的命令有邏輯判斷等非常複雜的操作時,再直接編輯crontab就有點困難了,這時,我們可以使用shell指令碼。其來歷,分類定義與題不符,不再多說,我們直接說它的用法。
我們用vim /usr/sh/test.sh來使用vim編輯一個shell指令碼
#!/bin/sh //宣告開始shell指令碼 a = "hello world" //定義一個shell變數 echo $a //熟悉的echo,輸出a變數
然後crontab -e編輯crontab,新增 */5 * * * * /usr/sh/test.sh每隔五分鐘執行一次test.sh指令碼,也可以用 /phppath/php /filepath/test.php 來用php程式來執行php程式。
如果您覺得本博文對您有幫助,您可以推薦或關注我,如果您有什麼問題,可以在下方留言討論,謝謝。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2910445/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 輕鬆搞定專案流程自動化
- 輕鬆搞定專案管理軟體、分配任務專案管理
- 用DolphinScheduler輕鬆實現Flume資料採集任務自動化!
- 怎樣在Excel中新增水印?學會這個方法可以輕鬆搞定Excel
- 10 分鐘輕鬆學會 Jackson 反序列化自動適配子類
- 掌握這些Linux常用命令,工作更輕鬆Linux
- 如何使用 cron 任務在 Linux 中計劃和自動化任務Linux
- 批量給視訊銳化的方法,使用這個軟體輕鬆搞定
- 在 Linux 中安全且輕鬆地管理 Cron 定時任務Linux
- [自動化執行]沒用過Ansible,你的自動化任務會考慮用它嗎?
- 學會這幾招,輕鬆讓你的github脫穎而出Github
- 什麼是任務自動化與流程自動化? - infoworld
- 看動畫輕鬆學會 Raft 演算法動畫Raft演算法
- 如何輕鬆搞定光纖熔接
- 如何排查DNS解析出錯?這四步輕鬆搞定DNS
- 想要學好Linux,搞定這幾個命令將會事半功倍!Linux
- 學習筆記:帶你十天輕鬆搞定 Go 微服務系列(二)筆記Go微服務
- 學習筆記:帶你十天輕鬆搞定 Go 微服務系列(一)筆記Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(七)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(六)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(四)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(五)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(三)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(一)Go微服務
- 帶你十天輕鬆搞定 Go 微服務系列(二)Go微服務
- 如何開啟自媒體寫作?4步教你輕鬆搞定
- DolphinScheduler JavaTask動態傳參秘籍:輕鬆實現任務間資料流動Java
- 如何使用ChatGPT來自動化Python任務ChatGPTPython
- 瞭解了這些,輕鬆拿offer——Java面試之道Java面試
- 5個營銷自動化技巧幫您輕鬆提高轉化率
- 武夷 | 搞定自動化 API 文件API
- 職場必備!學會這4個技巧,便可輕鬆操作Excel!Excel
- 帶你十天輕鬆搞定 Go 微服務系列(八、服務監控)Go微服務
- Apache Storm系列 之二( 輕鬆搞定 Storm 安裝與啟動)ApacheORM
- Vue資料驅動表單渲染,輕鬆搞定form表單VueORM
- 掌握這些,輕鬆管理BusyBox:inittab檔案的配置和作用解析
- 掌握這些方法,輕鬆識破釣魚郵件的偽裝
- 重灌win10系統用這種方式,自動化搞定!Win10