Watch是Linux上的一個(gè)命令,它會(huì)為我們重復(fù)運(yùn)行命令,它提供了一些非常有用的選項(xiàng)。它的基本選項(xiàng)之一是可以告訴watch在再次運(yùn)行指定命令之前要等待多長(zhǎng)時(shí)間。那么如何在Linux上使watch命令?
1、如果運(yùn)行命令watch -n 10 date,那么watch命令將首先清除屏幕并立即運(yùn)行date命令。之后,它將每10秒運(yùn)行一次命令,直到按control-C 將其停止。請(qǐng)注意,屏幕上的第一行將指示迭代之間的等待時(shí)間(每 10 秒)。
-n選項(xiàng)指定命令之間的秒數(shù),默認(rèn)值為2,可能需要仔細(xì)觀察才能注意到輸出中的變化。
所選命令的每次迭代都會(huì)覆蓋先前的輸出。如果想更輕松地關(guān)注正在更改的輸出部分,可以添加-d選項(xiàng)以突出顯示與先前輸出不同的輸出部分。如果使用d=cumulative設(shè)置,輸出的任何更改部分將在每次迭代中繼續(xù)突出顯示。
2、如果使用-g(輸出更改時(shí)退出)選項(xiàng),輸出中的任何更改都會(huì)導(dǎo)致watch命令停止運(yùn)行。例如,當(dāng)?shù)却M(jìn)程開始或結(jié)束時(shí),這可能非常有用。一旦看到手表輸出停止,我們就會(huì)知道是時(shí)候進(jìn)入工作的下一步了。
在上面的示例中,ps -ef命令輸出將包括我們的grep命令以及正在運(yùn)行的安裝命令或腳本。一旦該過程完成,手表將停止運(yùn)行,因?yàn)檩敵鰧l(fā)生變化。但是,它只會(huì)在完成下一個(gè)等待周期后停止。
如果正在等待某人登錄或退出系統(tǒng),我們可以使用watch命令讓您知道他們何時(shí)登錄。
像這樣的命令會(huì)重復(fù)顯示正在運(yùn)行的進(jìn)程數(shù):
$ watch -n 10 "ps -ef | wc -l"
每隔十秒就會(huì)顯示一次輸出。
在下面的示例中使用-t選項(xiàng)將省略監(jiān)視輸出中的標(biāo)題行。
總結(jié):watch命令是不會(huì)自行停止運(yùn)行,我們可以使用control-C將其終止,也可以使用-g選項(xiàng)在輸出更改時(shí)停止它。任何時(shí)候我們想監(jiān)視一個(gè)進(jìn)程、檢查日志文件的大小、查看系統(tǒng)性能,或者只是等待一個(gè)進(jìn)程完成,watch命令可以為我們做這些。
Copyright ? 2013-2020. All Rights Reserved. 恒訊科技 深圳市恒訊科技有限公司 粵ICP備20052954號(hào) IDC證:B1-20230800.移動(dòng)站