歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux命令 >> 必學的Linux命令之crontab

必學的Linux命令之crontab

日期:2017/2/28 10:02:18   编辑:Linux命令
Linux命令

以下主要向大家介紹60個必學的Linux命令,這些命令是新手必須掌握的,你只要掌握好了,你的技術會有很大的提升,希望大家看完之後技術會有很高的提升。

crontab
1.作用
使用crontab命令可以修改crontab配置文件,然後該配置由cron公用程序在適當的時間執行,該命令使用權限是所有用戶。
2.格式
crontab [ -u user ] 文件
crontab [ -u user ] { -l | -r | -e }
3.主要參數
-e:執行文字編輯器來設定時程表,內定的文字編輯器是vi。
-r:刪除目前的時程表。
-l:列出目前的時程表。
crontab
文件的格式為“M H D m d
cmd”。其中,M代表分鐘(0~59),H代表小時(0~23),D代表天(1~31),m代表月(1~12),d代表一星期內的天(0~6,0為星期
天)。cmd表示要運行的程序,它被送入sh執行,這個Shell只有USER、HOME、SHELL三個環境變量。
4.說明
和at命令相比,crontab命令適合完成固定周期的任務。
5.應用實例
設置一個定時、定期的系統提示:
[cao @www cao]#crontab -e
此時系統會打開一個vi編輯器。
如果輸入以下內容:35 17 * * 5 wall "Tomorrow is Saturday I will go CS",然後存盤退出。這時在/var/spool/cron/目錄下會生產一個cao的文件,內容如下:
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.2707 installed on Thu Jan 1 22:01:51 2004)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
35 17 * * 5 wall "Tomorrow is Saturday I will play CS "
這樣每個星期五17:35系統就會彈出一個終端,提醒星期六可以打打CS了!顯示結果見圖3所示。
圖3 一個定時、定期的系統提示
動手練習
1.聯合使用kill和top命令觀察系統性能的變化
首先啟動一個終端運行top命令,然後再啟動一個終端使用kill命令,見圖4所示。
圖4 觀察kill命令對top終端的影響
這時利用上面介紹的kill命令來中止一些程序:
#kill SIGKILL XXX
然後再看top命令終端的變化,包括內存容量、CPU使用率、系統負載等。注意,有些進程是不能中止的,不過學習Linux命令時可以試試,看看系統有什麼反應。
2.使用at和halt命令定時關機
首先設定關機時間是17:35,輸入下面代碼:
#at 17:35
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at>halt `-i -p
at>
job 6 at 2004-01-01 17:35

時實際上就已經進入Linux系統的Shell,並且編寫一個最簡單程序:halt -i
-p。上面Shell中的文本結束符號表示按“Ctrl+D”組合鍵關閉命令,提交任務退出Shell。“Job 6 at 2004-01-01
17:35”表示系統接受第6個at命令,在“2004-01-01 17:35”時執行命令:先把所有網絡相關的裝置停止,關閉系統後關閉電源。
3.用crontab命令實現每天定時的病毒掃描
前面已經介紹了一個簡單的crontab命令操作,這裡看一些更重要的操作。
(1)建立一個文件,文件名稱自己設定,假設為caoproject:
#crontab -e
(2)文件內容如下:
05 09 * * * antivir
用vi編輯後存盤退出。antivir是一個查殺Linux病毒的軟件,當然需要時先安裝在系統中。
(3)使用crontab命令添加到任務列表中:
#crontab caoproject
這樣系統內所有用戶在每天的9點05分會自動進行病毒掃描。
4.用kill使修改的配置文件馬上生效
Windows用戶一般都知道,重要配置文件修改後往往都要重新啟動計算機才能使修改生效。而Linux由於采用了模塊化設計,可以自己根據需要實時設定服務。這裡以網絡服務inetd為例介紹一些操作技巧。
inetd
是一個監聽守護進程,監聽與提供互聯網服務進程(如rlogin、telnet、ftp、rsh)進行連接的要求,並擴展所需的服務進程。默認情況下,
inetd監聽的這些daemon均列於/etc
/inetd.conf文件中。編輯/etc/inetd.conf文件,可以改變inetd啟動服務器守護進程的選項,然後驅使inetd以
SIGHUP(signal 1)向當前的inetd進程發送信號,使inetd重讀該文件。這一過程由kill命令來實現。
用vi或其它編輯器修改inetd.conf後,首先使用下面命令:
#ps -ef |grep inetd
上面代碼表明查詢inetd.conf的進程號(PID),這裡假設是1426,然後使用下面命令:
# kill -1426 inetd
這樣配置文件就生效了。
這一講介紹的系統管理命令都是比較重要的,特別是crontab命令和quota命令使用起來會有一定難度,需要多做一些練習。另外,使用kill命令要注意“-9“這個參數,練習時最好不要運行一些重要的程序。
希望以上的Linux命令對大家有所幫助。

Copyright © Linux教程網 All Rights Reserved