自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

這些 Linux 的“自動化”技巧,教你輕松完成任務(wù)

系統(tǒng) Linux
linux 系統(tǒng)的 web 網(wǎng)站在運營狀態(tài)時,我們常需要對網(wǎng)站進行維護,這些都會需要 linux能實現(xiàn)自動執(zhí)行某些任任務(wù)。本篇博文介紹如何進行常見的linux自動化任務(wù)。

linux 系統(tǒng)的 web 網(wǎng)站在運營狀態(tài)時,我們常需要對網(wǎng)站進行維護,例如查看資源剩余并做出響應(yīng)、日志分割、數(shù)據(jù)整理,在特定狀態(tài)執(zhí)行特定任務(wù)等等,這些都會需要 linux能實現(xiàn)自動執(zhí)行某些任任務(wù)。本篇博文介紹如何進行常見的linux自動化任務(wù)。

實現(xiàn)“自動化”有如下好處:

  1. 節(jié)省人力,一個腳本就夠了。
  2. 在夜晚自動執(zhí)行可以避開網(wǎng)站流量高峰期,不影響網(wǎng)站白天的效率。
  3. 準確,設(shè)置完善的情況下,不會出差錯。
  4. 當然最重要的還是省心了,不用頻繁的敲某些命令了。

開機啟動

開機啟動應(yīng)該是我們很經(jīng)常的需求了,我們常需要在開機時就自動執(zhí)行某些命令來開啟服務(wù),進程等,有了它我們不必再在每次開機時輸入同一堆命令。

chkconfig命令使用chkconfig命令可以在設(shè)置在不同啟動級別下啟動特定的服務(wù)或是程序。

先說一下linux的運行級別:

  • 等級0表示:表示關(guān)機
  • 等級1表示:單用戶模式
  • 等級2表示:不帶NFS功能的多用戶命令行模式
  • 等級3表示:有帶NFS功能的多用戶命令行模式
  • 等級4表示:不可用
  • 等級5表示:帶圖形界面的多用戶模式
  • 等級6表示:重新啟動

chkconfig的命令如下:

chkconfig --list //命令查看已設(shè)置的開啟自啟動列表。
xxxd 0:off 1:off 2:on ... 6:off //list的結(jié)果,表示在xxxd服務(wù)在啟動級別為2 3 4 5 的情況下會自動啟動。
chkconfig --add xxxd//向任務(wù)列表中添加一個xxxd服務(wù)
chkconfig [--level 1/2/../6] xxxd on/off//設(shè)置xxxd用服務(wù)在n狀態(tài)為開/關(guān),[]內(nèi)省略則在2345級別開啟
chkconfig --del xxxd //將任務(wù)列表中的xxxd服務(wù)刪除

rc.d文件的編輯

也可以直接編輯/etc/rc.d/目錄下的文件來實現(xiàn)開機自啟動。此目錄下有很多文件,rcn.d是在啟動狀態(tài)為n的情況下的啟動文件夾,rc、rc.sysinit、init.d都是系統(tǒng)的模塊或系統(tǒng)設(shè)置的自啟文件[夾]。

我們用vim rc.local 編輯 rc.local文件,來定制自己的自啟計劃。命令十分簡單,就像平常在操作一樣。如/usr/local/apache/bin/apachectl start表示開機自啟動apache服務(wù)器。

at實現(xiàn)定時任務(wù)

at是一個簡單的功能簡單的定時任務(wù)程序,它只能進行一次性的定時任務(wù),其用法如下:

#at time      //at加時間啟動at命令
at>operation //輸入要執(zhí)行的操作
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進程關(guān)閉狀態(tài),需要手動打開。

crontab實現(xiàn)定時任務(wù)

linux內(nèi)置的cron進程能幫我們實現(xiàn)這些需求,cron搭配shell腳本,非常復雜的指令也沒有問題。

cron介紹

cron守護進程是一個由實用程序和配置文件組成的小型子系統(tǒng),在幾乎所有類 UNIX 系統(tǒng)上都可以找到某種風格的cron,我們可以用ps aux|grep cron找到crond這個守護進程。

我們經(jīng)常使用的是crontab命令是cron table的簡寫,它是cron的配置文件,也可以叫它作業(yè)列表,我們可以在以下文件夾內(nèi)找到相關(guān)配置文件。

  • /var/spool/cron/ 目錄下存放的是每個用戶包括root的crontab任務(wù),每個任務(wù)以創(chuàng)建者的名字命名
  • /etc/crontab 這個文件負責調(diào)度各種管理和維護任務(wù)。/etc/cron.d/ 這個目錄用來存放任何要執(zhí)行的crontab文件或腳本。
  • 我們還可以把腳本放在/etc/con.hourly、/etc/con.daily、/etc/con.weekly、/etc/con.monthly目錄中,讓它每小時/天/星期、月執(zhí)行一次。

crontab的使用

我們常用的命令如下:

crontab [-u username]    //省略用戶表表示操作當前用戶的crontab
-e (編輯工作表)
-l (列出工作表里的命令)
-r (刪除工作作)

我們用crontab -e進入當前用戶的工作表編輯,是常見的vim界面。每行是一條命令。

crontab的命令構(gòu)成為 時間+動作,其時間有分、時、日、月、周五種,操作符有

  • * 取值范圍內(nèi)的所有數(shù)字
  • / 每過多少個數(shù)字
  • - 從X到Z
  • , 散列數(shù)字

以下是幾個例子。

時間                  注釋
0 0 25 12 * //在12月25日的0時0分
*/5 * * * * //每過5分鐘
* 4-6 * * * //每天的4 5 6點
* * * * 2,5 //每周二和周五

配合簡單的shell腳本

如果我們的命令有邏輯判斷等非常復雜的操作時,再直接編輯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進程來執(zhí)行php程序。

如果您覺得本博文對您有幫助,您可以推薦或關(guān)注我,謝謝。

責任編輯:龐桂玉 來源: 良許Linux
相關(guān)推薦

2022-07-25 11:25:42

Linux自動化技巧

2021-03-09 10:08:15

Linux 自動化操作系統(tǒng)

2020-12-24 14:00:58

開源技術(shù) 軟件

2022-08-30 19:14:31

LinuxBash

2024-07-01 18:07:30

Python腳本自動化

2019-11-14 10:00:18

Linuxcron任務(wù)自動化任務(wù)

2024-06-12 12:36:48

CrontabPython

2019-08-27 08:55:05

2025-01-06 07:10:00

Ansible自動化運維

2023-04-14 08:48:57

AutoGPT工具人工智能

2018-01-15 10:30:00

AndroidPython 開發(fā)

2020-02-27 10:11:11

自動化IT安全

2020-07-24 09:52:55

自動化ITCIO

2013-08-28 10:38:01

2009-08-27 11:35:45

ibmdw云計算

2022-08-08 07:35:37

云測試工具云存儲云計算

2010-04-14 16:22:42

Oracle 9i

2009-07-16 09:09:36

ibatis自動代碼

2009-12-22 10:23:41

Linux漢化

2023-11-15 18:02:52

點贊
收藏

51CTO技術(shù)棧公眾號