Linux任務排程及crontab用法詳解、程式的介紹和管理、時間、網路狀態資訊、路由資訊等

ADreamClusive發表於2017-05-14

1 任務排程

1.1 任務排程的概念和分類

任務排程:是指系統在某個時間,執行特定的命令或程式。

任務排程的分類:

  • 系統工作:有些重要的工作必須周而復始地完成。如病毒掃描等
  • 個別使用者工作:如執行某些程式

1.2 設定任務排程的檔案【/etc/crontab】

【crontab -e】:設定任務,開始設定任務
【0 2 * * * date >> /home/mydate2】表示每天的第二個小時,第0分鐘開始執行後邊的命令
(【date >> /home/mydata1】每隔一定時間,顯示一次時間(追加寫))
如: 【5 * * * * ls -l /etc/ > /tmp/to.txt】表示每小時的第五分鐘執行【ls -l /etc/ > /tmp/to.txt】
# 每次新增完任務後,一定記得重新啟動crond服務,不然不會生效
# service crond restart




1.3 排程多個任務

①在【crontab -e】中直接寫
②可以把所有的任務,寫入到一個可執行檔案(即:shell 程式設計)
  • 【vim mytask.sh】
  • 內容為:date >> /home/mydate3
cp /home/mydate3 /root
寫完之後,wq儲存退出
  • 修改.sh檔案為可執行檔案(新增許可權):【chmod 744 mytask.sh】
  • 【crontab -e】
寫入:【* * * * * /home/mytask.sh】這個內容

1.4 終止任務排程

【crontab -r】終止任務排程 r=remove

1.5 列出當前有哪些任務排程

【crontab -l】列出當前有哪些任務排程

2 程式的介紹和管理

2.1 程式和執行緒

程式:正在執行的程式就是程式,每個程式都會分配一個ID號;
每個程式都可以有兩種方式存在,前臺(螢幕上可以進行操作的)和後臺(實際在操作,但螢幕無法看到的程式)【一般系統的服務都是以後臺程式的方式存在的】。
執行緒:輕量級的程式;
程式有獨立的地址空間,執行緒沒有;
執行緒不能獨立存在,它是由程式建立;(fork)Thread
相對講,執行緒耗費的CPU和記憶體小於程式。

2.2 顯示系統中執行的程式【ps】(查詢靜態資訊)

【ps】命令用來檢視目前系統中,有哪些正在執行,以及他們執行的狀況。可以不加任何引數
顯示詳細的程式資訊:
【ps -a】顯示當前終端的所有程式資訊。
【ps -u】以使用者的格式顯示程式的資訊。
【ps -x】顯示後臺程式執行引數。
也可以【ps -aux】

顯示的資訊含義:

2.3 終止某個程式

【kill 程式號】終止某個程式
有些程式會捕捉某些訊號,如果不能直接結束程式,可以用“-9”傳送資訊:【kill -9 程式號】

2.4 查詢程式動態資訊

【top】

2.4.1 監視特定的使用者

【top】 輸入命令,回車,檢視執行的程式
【u】然後輸入u,再輸入使用者名稱,回車即可

2.4.2 終止程式

【top】 輸入命令,回車,檢視執行的程式
【k】然後輸入k,再輸入程式ID號,回車即可

2.4.3 指定系統狀態的更新時間

【top -d 10】系統更新程式的時間為10秒

3 其他常用命令

3.1 設定系統時間

【date】顯示系統時間
【date MMDDHHMMCCYY.SS】:修改系統時間 : 月月日日時時分分年年年年.秒秒
【cal 3 2019】:檢視2019年3月的月曆
【cal 2020】:檢視2020年的年曆


3.2 監控網路狀態資訊

【netstat】顯示網路統計資訊
顯示整個系統目前的網路情況。如:連線資訊、埠資訊、資料包傳遞資料、或是路由表內容
如:【netstat -an】
【netstat -anp】 可以在顯示資訊中加入程式號的顯示

3.3 顯示資料包經過歷程--路由追蹤

【traceroute】用來檢測資料包在網路中傳輸的過程,從本機到遠端主機完整路徑,幫助管理員解決問題
【route】檢視路由表(記錄著本路由器跟哪些路由連線著),直接輸入,顯示本機路由資訊











相關文章