新聞中心
linux系統(tǒng)里面運(yùn)行的進(jìn)程可以通過編寫Shell腳本生成自動(dòng)化任務(wù),可以使用shell腳本殺死進(jìn)程(Kill process with Shell Script)。通過編寫腳本可以自定義殺死進(jìn)程的策略,我們以下面的例子代碼為例來實(shí)現(xiàn)這樣的功能:

成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、荊門網(wǎng)絡(luò)推廣、微信小程序定制開發(fā)、荊門網(wǎng)絡(luò)營銷、荊門企業(yè)策劃、荊門品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供荊門建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
######################################################################
#Bash腳本實(shí)現(xiàn)Linux殺死進(jìn)程的Shell腳本實(shí)現(xiàn)
#
#注意:請(qǐng)自行更改參數(shù)process_name,timeout_value以確定具體的進(jìn)程名稱和超時(shí)時(shí)間
######################################################################
#! /bin/bash #定義腳本的shell類型,使用bash
process_name=”processName” #進(jìn)程的名稱
timeout_value=10 #超時(shí)的時(shí)間
current_time=$(date +%s) #獲取當(dāng)前時(shí)間
#使用ps -A | grep “process_name”獲取進(jìn)程信息
process_info=$(ps -A | grep “$process_name”)
#如果拿到了進(jìn)程信息,則循環(huán)處理之
if [-n “$process_info” ];then
while read line
do
#通過awk命令獲取進(jìn)程的PID
pid=$(echo $line | awk ‘{print $1}’)
#獲取進(jìn)程啟動(dòng)的時(shí)間
START_time=$(ps -p $pid -o lstart | awk ‘NR==2{print $2,$3,$4}’)
#將時(shí)間轉(zhuǎn)化為Unix時(shí)間戳
start_time_s=$(date +%s –date “$start_time”)
#print shell info
echo “pid=$pid, start_time=$start_time, start_time_s=$start_time_s”
#計(jì)算時(shí)間差,如果超時(shí)則直接殺死進(jìn)程
if [ $[$current_time – $start_time_s] -gt $timeout_value ];then
echo “kill process name ($process_name) pid ($pid)”
kill -9 $pid
fi
done
fi
######################################################################
通過上面的bash腳本,我們可以根據(jù)自己設(shè)定的timeout_value參數(shù)值來指定一個(gè)超時(shí)時(shí)間來殺死Linux系統(tǒng)上超過timeout_value時(shí)間的進(jìn)程,這里我們使用了grep命令來獲取想要?dú)⑺赖倪M(jìn)程的pid,并使用kill -9來結(jié)束該進(jìn)程。
當(dāng)然,對(duì)于Linux系統(tǒng)的進(jìn)程殺死,我們也可以使用Killall、pkill等命令來實(shí)現(xiàn)進(jìn)程的殺死,但是有一個(gè)弊端就是如果想要定制一些殺死進(jìn)程的策略,這時(shí)候Shell腳本就派上用場了。通過編寫shell腳本,我們可以自己定制進(jìn)程殺死的策略,而不動(dòng)用系統(tǒng)自帶的殺死命令。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
本文標(biāo)題:Linux殺死進(jìn)程的Shell腳本實(shí)現(xiàn)(linux殺進(jìn)程腳本)
文章位置:http://www.5511xx.com/article/djsheph.html


咨詢
建站咨詢
