重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
1、shutdown
云縣網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),云縣網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為云縣上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的云縣做網(wǎng)站的公司定做!
shutdown命令安全地將系統(tǒng)關(guān)機(jī)。有些用戶會(huì)使用直接斷掉電源的方式來(lái)關(guān)閉Linux,這是十分危險(xiǎn)的。因?yàn)長(zhǎng)inux與windows不同,其后臺(tái)運(yùn)行著許多進(jìn)程,所以強(qiáng)制關(guān)機(jī)可能會(huì)導(dǎo)致進(jìn)程的數(shù)據(jù)丟失,使系統(tǒng)處于不穩(wěn)定的狀態(tài),甚至在有的系統(tǒng)中會(huì)損壞硬件設(shè)備。而在系統(tǒng)關(guān)機(jī)前使用shutdown命令,系統(tǒng)管理員會(huì)通知所有登錄的用戶系統(tǒng)將要關(guān)閉。并且login指令會(huì)被凍結(jié),即新的用戶不能再登錄。直接關(guān)機(jī)或者延遲一定的時(shí)間才關(guān)機(jī)都是可能的,還可能重啟。這是由所有進(jìn)程process都會(huì)收到系統(tǒng)所送達(dá)的信號(hào)signal決定的。這讓像vi之類的程序有時(shí)間存儲(chǔ)目前正在編輯的文檔,而像處理郵件mail和新聞news的程序則可以正常地離開(kāi)等等。
shutdown執(zhí)行它的工作是送信號(hào)signal給init程序,要求它改變r(jià)unlevel。
2、poweroff
poweroff命令用于關(guān)閉計(jì)算器并切斷電源。
使用權(quán)限:系統(tǒng)管理者。
語(yǔ)法:poweroff [-n] [-w] [-d] [-f] [-i] [-h]
參數(shù)說(shuō)明:
-n 在關(guān)機(jī)前不做將記憶體資料寫(xiě)回硬盤(pán)的動(dòng)作
-w 并不會(huì)真的關(guān)機(jī),只是把記錄寫(xiě)到/var/log/wtmp檔案里
-d 不把記錄寫(xiě)到/var/log/wtmp文件里
-i 在關(guān)機(jī)之前先把所有網(wǎng)絡(luò)相關(guān)的裝置先停止
-p 關(guān)閉操作系統(tǒng)之前將系統(tǒng)中所有的硬件設(shè)置為備用模式
3、halt
最簡(jiǎn)單的關(guān)機(jī)命令。其實(shí)halt就是調(diào)用shutdown -h。halt執(zhí)行時(shí),殺死應(yīng)用進(jìn)程,執(zhí)行sync系統(tǒng)調(diào)用,文件系統(tǒng)寫(xiě)操作完成后就會(huì)停止內(nèi)核。
參數(shù)說(shuō)明:
[-n] 防止sync系統(tǒng)調(diào)用,它用在用fsck修補(bǔ)根分區(qū)之后,以阻止內(nèi)核用老版本的超級(jí)塊superblock覆蓋修補(bǔ)過(guò)的超級(jí)塊。
[-w] 并不是真正的重啟或關(guān)機(jī),只是寫(xiě)。
wtmp 〔/var/log/wtmp〕紀(jì)錄。
[-d] 不寫(xiě)wtmp紀(jì)錄。
[-f] 沒(méi)有調(diào)用shutdown而強(qiáng)制關(guān)機(jī)或重啟。
[-i] 關(guān)機(jī)或重啟前,關(guān)掉所有的網(wǎng)絡(luò)接口。
[-p] 該選項(xiàng)為缺省選項(xiàng),就是關(guān)機(jī)時(shí)調(diào)用poweroff。
4、reboot
reboot的工作過(guò)程差不多跟halt一樣,不過(guò)它是引發(fā)主機(jī)重啟,而halt是關(guān)機(jī)。它的參數(shù)與halt相差不多。
5、init
init是所有進(jìn)程的祖先,它的進(jìn)程號(hào)始終為1.所以發(fā)送TERM信號(hào)給init會(huì)終止所有的用戶進(jìn)程、守護(hù)進(jìn)程等。shutdown就是使用這種機(jī)制。init定義了8個(gè)運(yùn)行級(jí)別,init 0為關(guān)機(jī)、init 1為重啟,其它運(yùn)行級(jí)別這里不做過(guò)多介紹。另外還有telinit命令可以改變init的運(yùn)行級(jí)別,比如:telinit -iS可使系統(tǒng)進(jìn)入單用戶模式,并且得不到使用shutdown時(shí)的信息和等待時(shí)間。
sort命令是對(duì)文件進(jìn)行排序,并將排序的結(jié)果輸出到屏幕,不影響原文件
以行為單位,將每一行作為一個(gè)單位,相互比較,比較原則是從首字符向后,以此按ASCII碼進(jìn)行比較,最后升序輸出
參數(shù)
-b 忽略每行前面開(kāi)始處的空格
-d 只按照英文字母,數(shù)字,空格字符排序,忽略其他字符
-m 將幾個(gè)排序好的文件進(jìn)行合并
-n 依照數(shù)值的大小進(jìn)行排序,如果是按照數(shù)值大小排序一定要加 -n ,否則就會(huì)出現(xiàn) 10 比2 小的情況,因?yàn)槟J(rèn)比較數(shù)值是先比較第1位的,后面的位不考慮
-o 將排序好的結(jié)果輸出到文件, 也可以使用重定向符號(hào) 輸出到文件中
-r 以相反的順序來(lái)排序, 默認(rèn)是升序
linux去重命令是什么呢?
在介紹uniq命令之前,我們先來(lái)新建在下面的案例中需要用到的文件/tmp/uniq.txt,內(nèi)容如下
默認(rèn)情況下uniq只會(huì)檢索相鄰的重復(fù)數(shù)據(jù)從而去重。在/tmp/uniq.txt中雖然“onmpw web site” 有三條,但是其中一條是和其他兩條不相鄰的,所以只去重了一條,同理“error php function”也是這種情況。
鑒于以上的檢索機(jī)制,所以u(píng)niq一般情況下要和sort命令一塊兒使用。
復(fù)制代碼
# sort 1.txt | uniq
alpha css web
cat linux command
error php function
hello world
onmpw web site
recruise page site
repeat no data
wello web site
復(fù)制代碼
現(xiàn)在再看是不是所有的重復(fù)項(xiàng)都已經(jīng)經(jīng)過(guò)去重處理了。
好了,小試牛刀一把以后,下面我們開(kāi)始對(duì)uniq命令的選項(xiàng)進(jìn)行簡(jiǎn)單的介紹。
-c 統(tǒng)計(jì)每一行數(shù)據(jù)的重復(fù)次數(shù)
復(fù)制代碼
sort 1.txt | uniq -c
1 alpha css web
1 cat linux command
2 error php function
1 hello world
3 onmpw web site
1 recruise page site
1 repeat no data
1 wello web site
復(fù)制代碼
我們看 “error php function”出現(xiàn)了兩次,“onmpw web site”出現(xiàn)了三次。其余的都沒(méi)有重復(fù)項(xiàng)所以為1。
-i 忽略大小寫(xiě)
在1.txt中添加一行數(shù)據(jù) “Error PHP function”
復(fù)制代碼
cat 1.txt
alpha css web
cat linux command
error php function
hello world
onmpw web site
onmpw web site
wello web site
Error PHP function
recruise page site
error php function
repeat no data
onmpw web site
復(fù)制代碼
復(fù)制代碼
sort 1.txt | uniq –c
1 alpha css web
1 cat linux command
2 error php function
1 Error PHP function
1 hello world
3 onmpw web site
1 recruise page site
1 repeat no data
1 wello web site
復(fù)制代碼
我們看結(jié)果,uniq默認(rèn)是區(qū)分大小寫(xiě)的。使用-i可以忽略掉大小寫(xiě)問(wèn)題
復(fù)制代碼
sort 1.txt | uniq –c –i
1 alpha css web
1 cat linux command
3 error php function
1 hello world
3 onmpw web site
1 recruise page site
1 repeat no data
1 wello web site
復(fù)制代碼
現(xiàn)在再看是不是大小寫(xiě)已經(jīng)忽略掉了。
-u 只輸出沒(méi)有重復(fù)的數(shù)據(jù)
復(fù)制代碼
sort 1.txt | uniq –iu
alpha css web
cat linux command
hello world
recruise page site
repeat no data
wello web site
復(fù)制代碼
看到?jīng)],結(jié)果中的“error php function”和“onmpw web site”都沒(méi)有被輸出。
-w N 表示從第一個(gè)字符開(kāi)始只檢索N個(gè)字符來(lái)判重。
復(fù)制代碼
sort 1.txt | uniq –iw 2
alpha css web
cat linux command
error php function
hello world
onmpw web site
recruise page site
wello web site
復(fù)制代碼
這里我們讓uniq只對(duì)前兩個(gè)字符進(jìn)行檢索,recruit 和 repeat前兩個(gè)字符都是re,所以這兩行也被認(rèn)為是重復(fù)的。
-f N 表示略過(guò)前面N個(gè)字段,從第N+1個(gè)字段開(kāi)始檢索重復(fù)數(shù)據(jù)。以空格符或者tab鍵為分隔符。
復(fù)制代碼
sort 1.txt | uniq –icf 2
1 alpha css web
1 cat linux command
3 error php function
1 hello world
4 onmpw web site
1 repeat no data
1 wello web site
復(fù)制代碼
我們?cè)诮Y(jié)果中可以看到,這是略過(guò)前面的2個(gè)字段,從第三個(gè)字段開(kāi)始判重的。“recruise page site” 和 “onmpw web site”的第三個(gè)字段相同,所以被認(rèn)為是相同的數(shù)據(jù)。但是我們看到,“wello web site”和“onmpw web site”不但第三個(gè)字段相同,第二個(gè)也相同。那為什么它不被計(jì)入“onmpw web site”的重復(fù)數(shù)據(jù)中呢。對(duì)于這個(gè)問(wèn)題就要回到前面說(shuō)的,uniq只檢測(cè)相鄰的數(shù)據(jù)是否是重復(fù)的。
要解決這個(gè)問(wèn)題還需要在sort命令上著手。還記得sort命令的-k選項(xiàng)嗎,沒(méi)錯(cuò),我們就用它來(lái)解決。
復(fù)制代碼
sort –k 2 1.txt | uniq –icf 2
1 alpha css web
1 cat linux command
1 repeat no data
1 recruise page site
3 error php function
4 onmpw web site
1 hello world
復(fù)制代碼
我們看,是不是解決了。
-s N表示略過(guò)前面N個(gè)字符,關(guān)于這個(gè)選項(xiàng)的例子我們這里就不再舉了,該選項(xiàng)和-f N的用法差不多。只不過(guò)-f N是略過(guò)前面N個(gè)字段;-s是略過(guò)前面N個(gè)字符。
-d 只輸出有重復(fù)項(xiàng)的第一條的數(shù)據(jù)。
sort 1.txt | uniq -idw 2
repeat no data
error php function
onmpw web site
結(jié)果只有這三條。為什么會(huì)有“repeat no data”這條數(shù)據(jù),這里注意-w 2的應(yīng)用。
-D 對(duì)于重復(fù)項(xiàng)全部輸出
復(fù)制代碼
sort 1.txt | uniq –iDw 2
repeat no data
recruise page site
error php function
error php function
Error PHP function
onmpw web site
onmpw web site
onmpw web site
復(fù)制代碼
好了,關(guān)于uniq的選項(xiàng)的所有常用的命令已經(jīng)都介紹完了。關(guān)于uniq更詳細(xì)的信息可以使用命令info uniq。
一、 Linux 的五個(gè)重啟命令
1、shutdown
2、poweroff
3、init
4、reboot
5、halt
二、 五個(gè)重啟命令的具體說(shuō)明
shutdown
reboot
在linux下一些常用的關(guān)機(jī)/重啟命令有shutdown、halt、reboot、及init,它們都可以達(dá)到重啟系統(tǒng)的目的,但每個(gè)命令的內(nèi)部工作過(guò)程是不同的,通過(guò)本文的介紹,希望你可以更加靈活的運(yùn)用各種關(guān)機(jī)命令。
1.shutdown
shutdown命令安全地將系統(tǒng)關(guān)機(jī)。 有些用戶會(huì)使用直接斷掉電源的方式來(lái)關(guān)閉linux,這是十分危險(xiǎn)的。因?yàn)閘inux與windows不同,其后臺(tái)運(yùn)行著許多進(jìn)程,所以強(qiáng)制關(guān)機(jī)可能會(huì)導(dǎo)致進(jìn)程的數(shù)據(jù)丟失?使系統(tǒng)處于不穩(wěn)定的狀態(tài)?甚至在有的系統(tǒng)中會(huì)損壞硬件設(shè)備。而在系統(tǒng)關(guān)機(jī)前使用shutdown命令?系統(tǒng)管理員會(huì)通知所有登錄的用戶系統(tǒng)將要關(guān)閉。并且login指令會(huì)被凍結(jié)?即新的用戶不能再登錄。直接關(guān)機(jī)或者延遲一定的時(shí)間才關(guān)機(jī)都是可能的?還可能重啟。這是由所有進(jìn)程〔process〕都會(huì)收到系統(tǒng)所送達(dá)的信號(hào)〔signal〕
決定的。這讓像vi之類的程序有時(shí)間儲(chǔ)存目前正在編輯的文檔?而像處理郵件〔mail〕和新聞〔news〕的程序則可以正常地離開(kāi)等等。
shutdown執(zhí)行它的工作是送信號(hào)〔signal〕給init程序?要求它改變r(jià)unlevel。
Runlevel 0被用來(lái)停機(jī)〔halt〕?runlevel 6是用來(lái)重新激活〔reboot〕系統(tǒng)?而runlevel 1則是被用來(lái)讓系統(tǒng)進(jìn)入管理工作可以進(jìn)行的狀態(tài)?這是預(yù)設(shè)的?假定沒(méi)有-h也沒(méi)有-r參數(shù)給shutdown。要想了解在停機(jī)〔halt〕或者重新開(kāi)機(jī)〔reboot〕過(guò)程中做了哪些動(dòng)作?你可以在這個(gè)文件/etc/inittab里看到這些runlevels相關(guān)的資料。
shutdown 參數(shù)說(shuō)明:
[-t] 在改變到其它runlevel之前?告訴init多久以后關(guān)機(jī)。
[-r] 重啟計(jì)算器。
[-k] 并不真正關(guān)機(jī)?只是送警告信號(hào)給
每位登錄者〔login〕。
[-h] 關(guān)機(jī)后關(guān)閉電源〔halt〕。
[-n] 不用init?而是自己來(lái)關(guān)機(jī)。不鼓勵(lì)使用這個(gè)選項(xiàng)?而且該選項(xiàng)所產(chǎn)生的后果往往不總是你所預(yù)期得到的。
[-c] cancel current process取消目前正在執(zhí)行的關(guān)機(jī)程序。所以這個(gè)選項(xiàng)當(dāng)然沒(méi)有時(shí)間參數(shù)?但是可以輸入一個(gè)用來(lái)解釋的訊息?而這信息將會(huì)送到每位使用者。
[-f] 在重啟計(jì)算器〔reboot〕時(shí)忽略fsck。
[-F] 在重啟計(jì)算器〔reboot〕時(shí)強(qiáng)迫f(wàn)sck。
[-time] 設(shè)定關(guān)機(jī)〔shutdown〕前的時(shí)間。
2.halt----最簡(jiǎn)單的關(guān)機(jī)命令
其實(shí)halt就是調(diào)用shutdown -h。halt執(zhí)行時(shí)?殺死應(yīng)用進(jìn)程?執(zhí)行sync系統(tǒng)調(diào)用?文件系統(tǒng)寫(xiě)操作完成后就會(huì)停止內(nèi)核。
參數(shù)說(shuō)明:
[-n] 防止sync系統(tǒng)調(diào)用?它用在用fsck修補(bǔ)根分區(qū)之后?以阻止內(nèi)核用老版本的超級(jí)塊〔superblock〕覆蓋修補(bǔ)過(guò)的超級(jí)塊。
[-w] 并不是真正的重啟或關(guān)機(jī)?只是寫(xiě)
wtmp〔/var/log/wtmp〕紀(jì)錄。
[-d] 不寫(xiě)wtmp紀(jì)錄〔已包含在選項(xiàng)[-n]中〕。
[-f] 沒(méi)有調(diào)用shutdown而強(qiáng)制關(guān)機(jī)或重啟。
[-i] 關(guān)機(jī)〔或重啟〕前?關(guān)掉所有的網(wǎng)絡(luò)接口。
[-p] 該選項(xiàng)為缺省選項(xiàng)。就是關(guān)機(jī)時(shí)調(diào)用poweroff。
3.reboot
reboot的工作過(guò)程差不多跟halt一樣?不過(guò)它是引發(fā)主機(jī)重啟?而halt是關(guān)機(jī)。它 的參數(shù)與halt相差不多。
4.init
init是所有進(jìn)程的祖先?它的進(jìn)程號(hào)始終為1?所以發(fā)送TERM信號(hào)給init會(huì)終止所有的 用戶進(jìn)程?守護(hù)進(jìn)程等。shutdown 就是使用這種機(jī)制。init定義了8個(gè)運(yùn)行級(jí)別(runlevel), init 0為關(guān)機(jī)?init 1為重啟。關(guān)于init可以長(zhǎng)篇大論?這里就不再敘述。另外還有telinit命令可以改變init的運(yùn)行級(jí)別?比如?telinit -iS可使系統(tǒng)進(jìn)入單用戶模式? 并且得不到使用shutdown時(shí)的信息和等待時(shí)間。
以上就是Linux五個(gè)重啟命令的具體使用說(shuō)明,謝謝閱讀,希望能幫到大家,請(qǐng)繼續(xù)關(guān)注腳本之家,我們會(huì)努力分享更多優(yōu)秀的文章。