濮阳杆衣贸易有限公司

主頁 > 知識庫 > CentOS如何運行與控制后臺進程?

CentOS如何運行與控制后臺進程?

熱門標(biāo)簽:怎樣在北斗地圖標(biāo)注商戶 日立hgp外呼線路圖 400外呼系統(tǒng) 配置要求 電話外呼系統(tǒng)解決方案 廣州點撥外呼系統(tǒng)多少錢一個月 太原外呼電銷機器人軟件 辦理400電話的好處都有哪些 貴港便宜外呼系統(tǒng)報價 仙桃外呼系統(tǒng)

我們經(jīng)常會碰到這樣的問題,用ssh登錄了遠程的Linux服務(wù)器,運行了一些耗時較長的任務(wù),結(jié)果卻由于網(wǎng)絡(luò)等的不穩(wěn)定導(dǎo)致任務(wù)中途失敗。

這是由于在用戶注銷(logout)或者網(wǎng)絡(luò)斷開時,終端會收到 HUP(hangup)信號從而關(guān)閉其所有子進程。

解決辦法有兩種:讓進程忽略HUP信號,或讓進程運行在新的會話里從而成為不屬于此終端的子進程。

下面是對Linux下運行與控制后臺進程的各種方法的介紹:

1.nohup

顧名思義,nohup的用途就是讓提交的命令忽略所有的hangup信號。

使用方法:nohup COMMAND [ARG]...

2.setsid

在一個新的會話中運行命令,從而可以避開當(dāng)前終端發(fā)出的HUP信號。

使用方法:setsid COMMAND [ARG]...

3.

可以結(jié)合()產(chǎn)生一個新的子shell并在這個子shell中將任務(wù)放置到后臺運行,從而不受當(dāng)前shell終端的HUP信號影響。

使用方法:(COMMAND [ARG]... )

而我通常的使用方式為:

nohup ./filename.sh > filename.log 2>1

nohup ./filename.sh > filename.log

三點理由:

1)nohup保障進程不會被hangup信號異常中斷;

2)將任務(wù)放置到后臺運行,不占用當(dāng)前的終端;

3)將錯誤輸出也打印到log中,默認(rèn)>只有標(biāo)準(zhǔn)輸出,錯誤輸出沒有。

4.控制進程

通過以下命令,我們可以對放入到后臺的命令進行控制

查看當(dāng)前終端下的后臺進程:

直接執(zhí)行:jobs

將查看到的某個后臺進程放回到前臺:

直接輸入:fg {jobid} //這里的{jobid}是通過jobs命令中看到的進程前[]中的數(shù)字。

將當(dāng)前正在前臺運行的進程放到后臺運行:

先敲下快捷鍵:ctrl +z //暫停當(dāng)前正在運行的進程。

再執(zhí)行:bg

終止當(dāng)前正在前臺運行的進程:

直接敲下快捷鍵:ctrl +c

5.disown

亡羊補牢,為沒有使用nohup與setsid的進程加上忽略HUP信號的功能。

使用方法:

將當(dāng)前正在前臺運行的進程放到后臺運行;

然后執(zhí)行disown -h %{jobid} //這里的{jobid}是通過jobs命令中看到的進程前[]中的數(shù)字。

6.通過screen來實現(xiàn)穩(wěn)定的后臺運行

screen是建立一個新的全屏虛擬會話終端,這個會話只有在手動輸入exit的時候才會退出,在這個會話里執(zhí)行的命令不用擔(dān)心HUP信號會對我們的進程 造成影響,因此也不用給每個命令前都加上“nohup”或“setsid”了,非常適合我們有規(guī)劃的執(zhí)行大量的后臺任務(wù),可以非常方便的讓我們對這些后臺 任務(wù)進行管理。

使用方法:

screen //立即創(chuàng)建并進入一個會話。

screen -dmS {name} //建立一個處于斷開模式下的會話,并根據(jù)我們的需要指定其會話名稱。

screen -list //列出所有會話。

screen -r {name} //以獨占方式進入指定會話。

screen -x {name} //以并行方式進入指定會話。

ctrl +ad //輸入快捷鍵ctrl +a和d,可暫時退出當(dāng)前會話。

exit //進入指定會話后執(zhí)行exit即可關(guān)閉該會話。

標(biāo)簽:廣安 六盤水 雅安 公主嶺 河源 麗水 商丘 青島

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《CentOS如何運行與控制后臺進程?》,本文關(guān)鍵詞  CentOS,如何,運行,與,控制,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《CentOS如何運行與控制后臺進程?》相關(guān)的同類信息!
  • 本頁收集關(guān)于CentOS如何運行與控制后臺進程?的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    丰顺县| 呼图壁县| 古田县| 太白县| 乌海市| 通州市| 莆田市| 文登市| 石城县| 左权县| 宜黄县| 酉阳| 淄博市| 永和县| 营山县| 峨边| 宿迁市| 宁明县| 怀来县| 监利县| 和政县| 闽清县| 石棉县| 富蕴县| 绿春县| 察哈| 镇坪县| 五原县| 永嘉县| 辽宁省| 江源县| 新竹县| 揭阳市| 宁阳县| 房山区| 广州市| 含山县| 宜章县| 南皮县| 同江市| 孟州市|