linux后執(zhí)行命令設(shè)置 linux命令的執(zhí)行過程是怎樣的?新手必讀

linux后臺(tái)運(yùn)行、關(guān)閉、查看后臺(tái)任務(wù)常用命令

一、

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元城中做網(wǎng)站,已為上家服務(wù),為城中各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108

加在一個(gè)命令的最后,可以把這個(gè)命令放到后臺(tái)執(zhí)行,如:

[root@bqh-01 ~]# watch -n 3 "sh 1.sh " #每3s在后臺(tái)執(zhí)行一次 1.sh 腳本

二、ctrl + z

可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且處于暫停狀態(tài)。

三、jobs

查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令

jobs -l選項(xiàng)可顯示所有任務(wù)的PID,jobs的狀態(tài)可以是running, stopped, Terminated。但是如果任務(wù)被終止了(kill),shell 從當(dāng)前的shell環(huán)境已知的列表中刪除任務(wù)的進(jìn)程標(biāo)識(shí)。

將后臺(tái)中的命令調(diào)至 前臺(tái) 繼續(xù)運(yùn)行。如果后臺(tái)中有多個(gè)命令,可以用fg %jobnumber(是命令編號(hào),不是進(jìn)程號(hào))將選中的命令調(diào)出。

五、bg

將一個(gè)在后臺(tái)暫停的命令,變成在 后臺(tái) 繼續(xù)執(zhí)行。如果后臺(tái)中有多個(gè)命令,可以用bg %jobnumber將選中的命令調(diào)出。

六、kill

****

前臺(tái)進(jìn)程的終止:Ctrl+c

****七、 nohup

如果讓程序始終在后臺(tái)執(zhí)行,即使關(guān)閉當(dāng)前的終端也執(zhí)行(之前的做不到),這時(shí)候需要nohup。該命令可以在你退出帳戶/關(guān)閉終端之后繼續(xù)運(yùn)行相應(yīng)的進(jìn)程。關(guān)閉中斷后,在另一個(gè)終端jobs已經(jīng)無法看到后臺(tái)跑得程序了,此時(shí)利用ps(進(jìn)程查看命令)

pre style="margin: 0px; padding: 0px; color: rgb(51, 51, 51); font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"ps -aux | grep "1.sh" #a:顯示所有程序 u:以用戶為主的格式來顯示 x:顯示所有程序,不以終端機(jī)來區(qū)分/pre

linux如何設(shè)置程序開機(jī)啟動(dòng)后臺(tái)運(yùn)行?

有些時(shí)候,我們需要在終端啟動(dòng)一個(gè)程序,并使之運(yùn)行——但是如果關(guān)閉終端,那么這個(gè)程序也就隨著關(guān)閉了。那么有沒有什么方法在關(guān)閉終端后,讓已經(jīng)從這個(gè)終端啟動(dòng)的程序繼續(xù)運(yùn)行呢?有以下方法

1.讓linux忽略終端的hung up 信號(hào),不關(guān)閉進(jìn)程;

2.讓此進(jìn)程變?yōu)榻K端的非子進(jìn)程。

方法一:

在終端輸入命令:

# ./pso pso.file 21

解釋:將pso直接放在后臺(tái)運(yùn)行,并把終端輸出存放在當(dāng)前目錄下的pso.file文件中。

當(dāng)客戶端關(guān)機(jī)后重新登陸服務(wù)器后,直接查看pso.file文件就可看執(zhí)行結(jié)果(命

令:#cat pso.file )。

或者 在終端輸入命令:

# nohup ./pso pso.file 21

解釋:nohup就是不掛起的意思,將pso直接放在后臺(tái)運(yùn)行,并把終端輸出存放在當(dāng)前

目錄下的pso.file文件中。當(dāng)客戶端關(guān)機(jī)后重新登陸服務(wù)器后,直接查看pso.file

文件就可看執(zhí)行結(jié)果(命令:#cat pso.file )。

方法二:

實(shí)現(xiàn)方案就是nohup命令。

例如要啟動(dòng)jboss,可以nohup ./run.sh 。這樣就可以了,結(jié)尾的“”符號(hào)表示后臺(tái)啟動(dòng)jboss,從而不影響繼續(xù)運(yùn)行其他命令。

但這樣有一個(gè)問題,nohup命令雖然可以讓linux“放過”這個(gè)進(jìn)程,但是nohup會(huì)同時(shí)把進(jìn)程的控制臺(tái)輸出重定向到nohup.txt下(默認(rèn)是這個(gè)文件),當(dāng)然可以重定向?yàn)槠渌奈募?,但是輸出總?huì)有的。

如果jboss運(yùn)行很長(zhǎng)時(shí)間,而且如果有很多控制臺(tái)輸出的話,nohup.txt文件就會(huì)變的很大很大。

通常項(xiàng)目中的日志都會(huì)輸出到特定的日志文件或者輸出到 數(shù)據(jù)庫 中,也就是說控制臺(tái)的輸出對(duì)于程序的意義不大,那么可不可以拋棄掉這些輸出呢?答案是肯定的。

這里講解一下linux的重定向(注意,是linux的重定向,不是針對(duì)nohup)。

0、1和2分別表示標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤信息輸出,可以用來指定需要重定向的標(biāo)準(zhǔn)輸入或輸出。

在一般使用時(shí),默認(rèn)的是標(biāo)準(zhǔn)輸出,既1.當(dāng)我們需要特殊用途時(shí),可以使用其他標(biāo)號(hào)。例如,將某個(gè)程序的錯(cuò)誤信息輸出到log文件中:./program 2log。這樣標(biāo)準(zhǔn)輸出還是在屏幕上,但是錯(cuò)誤信息會(huì)輸出到log文件中。

另外,也可以實(shí)現(xiàn)0,1,2之間的重定向。21:將錯(cuò)誤信息重定向到標(biāo)準(zhǔn)輸出。

Linux下還有一個(gè)特殊的文件/dev/null,它就像一個(gè)無底洞,所有重定向到它的信息都會(huì)消失得無影無蹤。

結(jié)合nohup,我們可以這樣 nohup ./run.sh /dev/null

這是最簡(jiǎn)單的一種方式,既保證了程序能夠一直后臺(tái)執(zhí)行,又能保證不會(huì)產(chǎn)生太大的nohup.txt文件。

方法三:

利用的linux的一個(gè)機(jī)制,讓程序在subshell中執(zhí)行,方法很簡(jiǎn)單,將命令用括號(hào)() 括起來即可。

ps -ef | grep test

可以看到run.sh的父進(jìn)程為1,不是當(dāng)前終端了,這樣就能忽略hung up信號(hào)。

當(dāng)然linux還可以動(dòng)態(tài)的讓程序后臺(tái)運(yùn)行或不被hung up 信號(hào)關(guān)閉,例如disown命令,setid命令等。

方法四:

如果是使用Ubuntu的話,你可以利用CTRL+ALT+T組合鍵打開終端。當(dāng)然你也可以使用超級(jí)鍵(Windows鍵)打開Dash,搜索“TERM”,然后點(diǎn)擊“Term”圖標(biāo)來打開終端窗口。

對(duì)于其他的桌面環(huán)境來說,例如XFCE、KDE、LXDE、Cinnamon以及MATE,你可以在菜單中找到終端。有些環(huán)境會(huì)在??繖诨蛘呙姘迳厦姘K端圖標(biāo)。

通常情況下,你可以在終端里面直接輸入應(yīng)用程序名來啟動(dòng)一個(gè)應(yīng)用程序。比如說,你可以通過輸入“firefox”來啟動(dòng)Firefox。

在終端啟動(dòng)應(yīng)用程序的好處是,你可以包含一些額外的參數(shù)。

例如,你可以通過下列命令來打開一個(gè)Firefox瀏覽窗口,然后利用默認(rèn)的搜索引擎搜索相關(guān)信息:

firefox -search "linux點(diǎn)吸煙 "

你可能會(huì)注意到,如果你啟動(dòng)Firefox,程序打開以后,回到了終端窗口控制,這就意味著你可以繼續(xù)在終端進(jìn)行工作。

通常情況下,如果你在終端啟動(dòng)了應(yīng)用程序,控制會(huì)切換到新啟動(dòng)的應(yīng)用程序,只有程序被關(guān)閉以后才會(huì)重新切換到終端控制。這是因?yàn)槟阍谇芭_(tái)啟動(dòng)了這個(gè)程序。

如果要在Linux終端打開應(yīng)用程序并且返回終端控制,那么你需要將應(yīng)用程序啟動(dòng)為后臺(tái)進(jìn)程。

和下面所列的命令一樣,我們可以通過增加一個(gè)()符號(hào),將應(yīng)用程序在后臺(tái)啟動(dòng)。

libreoffice

譯者注:如果需要加參數(shù)的話,記得把符號(hào)放在最后。

譯者注:一般情況下,關(guān)閉終端時(shí),在這個(gè)終端啟動(dòng)的后臺(tái)程序也會(huì)被終止,要使終端關(guān)閉以后,后臺(tái)程序依然保持執(zhí)行可以使用下列命令

nohup command [arg...]

如果應(yīng)用程序目錄沒有安裝在PATH變量包含的目錄里面的話,我們就沒有辦法直接通過應(yīng)用程序名來啟動(dòng)程序,必須輸入應(yīng)用程序的整個(gè)路徑來啟動(dòng)它。

/path/to/yourprogram

如果你不確定程序輸入哪個(gè)Linux目錄結(jié)構(gòu)的話,可以使用find或者location命令來定位它。

可以輸入下列符號(hào)來找到一個(gè)文件:

find /path/to/start/from -name programname

例如,你可以輸入下列命令來找到Firefox:

find / -name firefox

命令運(yùn)行的結(jié)果會(huì)嗖的一下輸出一大堆,別擔(dān)心,你也可以通過less或者more來進(jìn)行分頁查看。

find / -name firefox | more find / -name firefox | less

當(dāng)find命令查找到?jīng)]有權(quán)限訪問的文件夾時(shí),會(huì)報(bào)出一條拒絕訪問錯(cuò)誤,

你可以通過sudo命令來提示權(quán)限。當(dāng)然,如果你沒有安裝sudo的話,就只能切換到一個(gè)擁有權(quán)限的用戶了。

sudo find / -name firefox | more

如果你知道你要查找的文件在你的當(dāng)前目錄結(jié)構(gòu)中,那么你可以使用點(diǎn)來代替斜杠:

sudo find . -name firefox | more

你可能需要sudo來提升權(quán)限,也可能根本就不需要,如果這個(gè)文件在你的主目錄里面,那么就不需要使用sudo。

有些應(yīng)用程序則必須要提升權(quán)限才能運(yùn)行,否則你就會(huì)得到一大堆拒絕訪問錯(cuò)誤,除非你使用一個(gè)具有權(quán)限的用戶或者使用sudo提升權(quán)限。

這里有個(gè)小竅門。如果你運(yùn)行了一個(gè)程序,但是它需要提升權(quán)限來操作,輸入下面命令試試:

sudo !!

方法五:

在Unix/Linux下如果想讓程序獨(dú)立終端運(yùn)行,一般都是使用 在命令結(jié)尾來讓程序自動(dòng)運(yùn)行。(命令后可以不追加空格)

打開gnome-terminal,執(zhí)行如下命令:

delectate@delectate:~$ totem [1] 8510delectate@delectate:~$ 有幾點(diǎn)需要注意:

已經(jīng)啟動(dòng)的程序依然attach于當(dāng)前pts,只有當(dāng)前終端模擬器關(guān)閉(使用exit命令退出),進(jìn)程自動(dòng)被tty繼承。delectate@delectate:~$ ps -e | grep totem //程序已被以totem 形式啟動(dòng),當(dāng)前附在pts0上8819 pts/0 00:00:00 totemdelectate@delectate:~$ ps -e | grep totem //pts0的模擬終端被exit命令關(guān)閉,totem自動(dòng)附在tty8819 ? 00:00:00 totemdelectate@delectate:~$

具有debug輸出的進(jìn)程,需要按enter鍵進(jìn)行中斷當(dāng)前debug輸出。但是如果程序持續(xù)進(jìn)行printf,你將無法輸入任何命令。delectate@delectate:~$ vlc [1] 8850delectate@delectate:~$ VLC media player 1.0.6 Goldeneye[0x8b998b0] main libvlc: Running vlc with the default interface. Use ‘cvlc’ to use vlc without interface. //enter presseddelectate@delectate:~$ //show a clean terminal now** (:8850): CRITICAL **: giop_thread_request_push: assertion `tdata != NULL’ failed //仍然在輸出數(shù)據(jù)…… //關(guān)閉程序[1]+ Done vlcdelectate@delectate:~$

你無法記錄程序的debug輸出結(jié)果。

只有當(dāng)虛擬終端是 $ 或者 # 時(shí)候,才可以關(guān)閉此終端,否則可能導(dǎo)致已經(jīng)啟動(dòng)的進(jìn)程被關(guān)閉(按enter——如果程序持續(xù)輸出信息而沒有出現(xiàn) $ 或 #)

使用nohup命令:

nohup描述:Run COMMAND, ignoring hangup signals.(忽略任何中斷/掛起信號(hào),使命令繼續(xù)執(zhí)行)

但是當(dāng)你嘗試使用命令:

1nohup command

時(shí)候卻會(huì)遇到不大不小的麻煩……

delectate@delectate:~$ nohup vlcnohup: ignoring input and appending output to `nohup.out’

是的,雖然它自動(dòng)把debug信息記錄到nohup.out文件,但是你卻無法使用這個(gè)終端進(jìn)行任何操作。

所以你需要和第一個(gè)方法混用,即

nohupcommand {option}

混用后,它會(huì)自動(dòng)把你執(zhí)行的命令輸出結(jié)果記錄到權(quán)限為-rw——-,名為nohup.out的文件中。

但是你仍然需要

delectate@delectate:~$ nohup vlc [1] 9045delectate@delectate:~$ nohup: ignoring input and appending output to `nohup.out’ //在這里按一下回車或以ctrl+c以 //show a clean terminal delectate@delectate:~$

與使用 “” 性質(zhì)相同,當(dāng)前啟動(dòng)程序的終端如果沒有被關(guān)閉,已經(jīng)啟動(dòng)的程序附在pst上;如果終端被關(guān)閉,則自動(dòng)附在tty。

如果當(dāng)前目錄的 nohup.out 文件不可寫,輸出重定向到 $HOME/nohup.out。默認(rèn)狀態(tài)下,nohup默認(rèn)輸出到nohup.out文件,你也可以利用重定向來指定輸出文件:

nohupcommand {option} myout.file 21

只有當(dāng)虛擬終端是 $ 或者 # 時(shí)候,才可以關(guān)閉此終端,否則可能導(dǎo)致已經(jīng)啟動(dòng)的進(jìn)程被關(guān)閉(按enter——如果程序持續(xù)輸出信息而沒有出現(xiàn) $ 或 #)

其他相關(guān)命令:

jobs:查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令

fg:將后臺(tái)中的命令調(diào)至前臺(tái)繼續(xù)運(yùn)行。如果后臺(tái)中有多個(gè)命令,可以用 fg %jobnumber將選中的命令調(diào)出,%jobnumber是通過jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid)

bg:將一個(gè)在后臺(tái)暫停的命令,變成繼續(xù)執(zhí)行。如果后臺(tái)中有多個(gè)命令,可以用bg %jobnumber將選中的命令調(diào)出,%jobnumber是通過jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid)

殺死進(jìn)程

殺死已經(jīng)啟動(dòng)的程序和普通方式一樣:

pkill -9 name

killall name

kill pid

命令應(yīng)用:

linux服務(wù)器掛機(jī)下載;啟動(dòng)相關(guān)服務(wù);linux服務(wù)器啟動(dòng)進(jìn)程(尤其是ssh登錄)

我就曾經(jīng)用 1nohup aria2c -i downloadlist -m 0 -j 1

在Linux中,如何設(shè)置前、后臺(tái)命令和程序的執(zhí)行?

命令后直接加,這個(gè)命令就在后臺(tái)執(zhí)行;

正在運(yùn)行的命令,使用Ctrl+z,就掛起;

jobs命令,可以現(xiàn)實(shí)后臺(tái),包括掛起的命令;

使用bg?%作業(yè)號(hào)?就可以把掛起的命令在后臺(tái)執(zhí)行;

使用fg??%作業(yè)號(hào)?就可以把后臺(tái)命令調(diào)到前臺(tái)。

Linux系統(tǒng)中如何執(zhí)行“./configure”命令?

1、打開終端輸入一下的命令$crontab ?-e。

2、進(jìn)入選擇editor,直接enter回車。

3、接著我們會(huì)進(jìn)入如下的編輯窗口。

4、在后面填寫*/1 ?* ?* ?* ?* ? ? ? date ? ?~/123,每一分鐘執(zhí)行“?date ? ?~/123”命令,把當(dāng)前時(shí)間寫123文件,這里的時(shí)間間隔可以自己設(shè)置。

5、然后“ctrl+x”進(jìn)行保存,輸入“Y”回車確定。

6、填寫文件名,可以默認(rèn)直接回車。

7、等一分后,我們發(fā)現(xiàn)用戶目錄多個(gè)123文件,打開里面時(shí)間日期,每分鐘都會(huì)呢更新。

擴(kuò)展資料

configure'腳本有大量的命令行選項(xiàng).對(duì)不同的軟件包來說,這些選項(xiàng)可能會(huì)有變化,但是許多基本的選項(xiàng)是不會(huì)改變的.帶上'-- help'選項(xiàng)執(zhí)行'configure'腳本可以看到可用的所有選項(xiàng)。

盡管許多選項(xiàng)是很少用到的,但是當(dāng)你為了特殊的需求而configure一個(gè)包時(shí),知道他們的存在是很有益處的.下面對(duì)每一個(gè)選項(xiàng)進(jìn)行簡(jiǎn)略的介紹:

cache-file=FILE

'configure'會(huì)在你的系統(tǒng)上測(cè)試存在的特性(或者bug!).為了加速隨后進(jìn)行的配置,測(cè)試的結(jié)果會(huì)存儲(chǔ)在一個(gè)cache file里.當(dāng)configure一個(gè)每個(gè)子樹里都有'configure'腳本的復(fù)雜的源碼樹時(shí),一個(gè)很好的cache file的存在會(huì)有很大幫助。

help

輸出幫助信息.即使是有經(jīng)驗(yàn)的用戶也偶爾需要使用使用'--help'選項(xiàng),因?yàn)橐粋€(gè)復(fù)雜的項(xiàng)目會(huì)包含附加的選項(xiàng)。例如,GCC包里的'configure'腳本就包含了允許你控制是否生成和在GCC中使用GNU匯編器的選項(xiàng)。

no-create

'configure'中的一個(gè)主要函數(shù)會(huì)制作輸出文件。此選項(xiàng)阻止'configure'生成這個(gè)文件.你可以認(rèn)為這是一種演習(xí)(dry run),盡管緩存(cache)仍然被改寫了。

quiet/--silent

當(dāng)'configure'進(jìn)行他的測(cè)試時(shí),會(huì)輸出簡(jiǎn)要的信息來告訴用戶正在作什么。這樣作是因?yàn)?configure'可能會(huì)比較慢,沒有這種輸出的話用戶將會(huì)被扔在一旁疑惑正在發(fā)生什么。使用這兩個(gè)選項(xiàng)中的任何一個(gè)都會(huì)把你扔到一旁。

文章名稱:linux后執(zhí)行命令設(shè)置 linux命令的執(zhí)行過程是怎樣的?新手必讀
當(dāng)前URL:http://muchs.cn/article44/ddihdhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、全網(wǎng)營(yíng)銷推廣、建站公司、定制開發(fā)外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化