Če vedno znova izvajate isti ukaz, morda obstaja boljši način.
Včasih morate večkrat zagnati ukaz ali program za spremljanje različnih vidikov vašega sistema, kot so tekoči procesi, uporaba prostora na disku ali prijave uporabnikov. Ukaz Linux watch vam omogoča avtomatizacijo teh nalog, ne da bi jih morali vedno znova ročno izvajati.
S tem ukazom lahko spremljate sistemske aktivnosti v realnem času, kot so prijave uporabnikov, stanje omrežja, poraba pomnilnika in procesorja, prostor na disku itd. Poglejmo, kako uporabiti ukaz watch v Linuxu.
Kaj je ukaz Watch?
Ukaz watch Linux večkrat zažene določen ukaz ali program v rednih intervalih in prikaže svoj rezultat v terminalu. To vam omogoča opazovanje sprememb v izhodu v realnem času. Osveži izhod v vsakem intervalu in prepiše prejšnji izhod ukaza. Privzeto se ukaz ponovi vsaki dve sekundi in se nadaljuje, dokler ga ročno ne prenehate uporabljati Ctrl + C.
Oglejte si sintakso ukazov
Sintaksa ukaza watch je:
watch options
Na voljo so različne možnosti ukazne vrstice za uporabo z ukazom watch. Če zaženete ukaz watch brez kakršnih koli možnosti, bo zagnal navedeni ukaz vsaki dve sekundi. Naslednje vam bo na primer pokazalo izhod ukaza ls:
watch ls -l ~/
Izhod vam bo pokazal spremembe v seznamu imenikov, če je datoteka ustvarjena, izbrisana ali spremenjena v velikosti, medtem ko bo izhod osveževal vsaki dve sekundi.
Zaženite ukaz vsakih X sekund z uporabo ure
Interval posodabljanja ukaza watch lahko spremenite. To pomeni, da lahko ukazu watch ukažete, naj počaka x sekund, preden ponovi ukaz. Če želite spremeniti interval posodabljanja, uporabite -n možnost, ki ji sledi časovni interval v sekundah.
watch -n
Če želite na primer zagnati ukaz vsakih 5 sekund, zaženite:
watch -n 5
Označite spremembe med posodobitvami
Ukaz watch ob vsaki osvežitvi prepiše svoj izhod. Uporabljati -d možnost, lahko tudi označite spremembe med prejšnjim in posodobljenim rezultatom.
watch -d
Ukaz watch privzeto prikaže glavo na vrhu vsakega izhoda, ki vsebuje interval posodobitve, ime ukaza ter trenutni datum in čas sistema. Glavo lahko odstranite iz izhoda z uporabo -t možnost:
watch -t
Predvajaj Beeps on Error
Ko se postopek Linuxa konča z izvajanjem, vrne izhodno kodo. Po dogovoru je vrednost 0 ob uspehu in različna od nič, kar pomeni napako. Ukaz za uro -b možnost predvaja pisk, če ukaz vrne izhod, ki ni enak nič.
Recimo, da želite spremljati sshd.service in prejeti obvestilo, ko se storitev ustavi; uporabili bi:
watch -b sudo systemctl status sshd.service
Ta ukaz bo dal pisk, ko se storitev ustavi. Pisk se bo ustavil, ko se storitev nadaljuje. Če želite to preizkusiti, odprite drugo terminalsko okno in ustavite storitev. To bo neprestano piskalo, dokler znova ne zaženete storitve. Vendar pa morate za uporabo te funkcije imeti v sistemu nameščen paket piskov.
Zapustite ukaz za uro ob izhodni spremembi
Ukazu watch lahko tudi naročite, naj se preneha izvajati in zapre, ko se izhod ukaza spremeni. To lahko storite z uporabo -g možnost. Ta možnost je zelo uporabna v scenarijih, ko čakate na določene spremembe v izhodu.
Ko se izhod spremeni, se ukaz watch ustavi. To uporabo lahko kombinirate z ukazom echo za prikaz sporočila na zaslonu.
Na primer, razmislite o scenariju, ko čakate, da datoteka prispe v vaš imenik. Naslednji ukaz bo nadzoroval imenik za navedeno datoteko. Takoj, ko prispe, se bo ukaz watch prenehal izvajati in sporočilo datoteka je prispela se prikaže na terminalu.
watch -g "ls -l | grep filename" && echo "file arrived"
Drug uporaben primer je obvestilo, ko se določen uporabnik prijavi v vaš sistem:
watch -g "who | grep username" && echo "username logged in"
Ta ukaz bo spremljal izhod who ukaz, ki izpiše uporabnike, ki so prijavljeni. Ko se uporabnik prijavi, se ukaz watch ustavi in prikaže sporočilo na terminalu.
Podobno lahko ukazu watch ukažete, naj ustavi storitev, ko se v datoteki naredi nekaj sprememb. Upoštevajte, da morate pri uporabi cevne verige ukazov celoten ukaz dati v narekovaje.
Oglejte si dejavnosti v vašem sistemu Linux
Če ugotovite, da ponavljate isti postopek, razmislite o uporabi ukaza watch, da ga avtomatizirate. Prihrani vam pogosto vnašanje ukazov, da bi videli, kaj se je spremenilo.
Ukaz watch lahko uporabite tudi z drugimi ukazi Linuxa za spremljanje sistemskih virov in dejavnosti ter sledenje spremembam v datotekah ali imenikih.