昨天在寫一個自動發送郵件的python程序,功能是每天定時給朋友發一封郵件。
所有開啓一個死循環的線程,休眠時間是一天,關鍵代碼如下:
while True:
# 發送郵件
email.send(receivers, '夏令的每天一句', contents)
# 每天發送
ran_int = random.randint(0, 2000) - 1000
# 一天後在發送
time.sleep(86400 + ran_int)
想法不錯,爲了關閉ssh遠程窗口的時候,python程序可以繼續在服務器上跑,所以我用的命令是
nohup python "test.py"
運行之後,手機立馬就收到郵件了,很給力,開心,哈哈哈。
樂極生悲。。。
納尼?內容有一個錯別字,這可拐大了。
得趕緊關閉程序修改,想到的命令首先是top
,查看任務,如下圖。
等了好久,都沒有找到python的進程,因爲我開啓的線程休眠時間太長了,不會被調度過來。
於是通過ps -A
命令查看所有進程,終於找到了一個python的,這時候就可以通過kill pid
進行關閉了。
但有時候我們運行了多個python程序,顯示的都是python,那就不知道關哪一個了。這時候就可以使用管道命令|與grep
+ 程序名 來搜索了,我運行的是“test.py”,可以使用ps -aux | grep "test.py
"來搜索,結果如下圖。
前面的20671
就是pid
,使用kill
命令關掉就ok啦!