GNU/Linux >> Znalost Linux >  >> Linux

sledovat příklady příkazů pro opakované spuštění příkazu nebo sledování dynamicky měnitelných souborů (jako /proc/*)

Watch command je opravdu úhledný nástroj a hodí se v mnoha situacích. Příkaz watch lze použít k pravidelnému sledování libovolného souboru nebo skriptu. Standardně se spouští každé 2 sekundy a poběží až do přerušení.

# watch -h
Usage: watch [-dhntv] [--differences[=cumulative]] [--help] [--interval=[n]] [--no-title] [--version] [command]
  -d, --differences[=cumulative]	highlight changes between updates
		(cumulative means highlighting is cumulative)
  -h, --help				print a summary of the options
  -n, --interval=[seconds]		seconds to wait between updates
  -v, --version				print the version number
  -t, --no-title			turns off showing the header

Základní syntaxe příkazu watch je :

# watch [-n seconds] [-d] [command]

Zde,

-d flag will highlight the differences between successive updates.
-n flag is to specify the interval. The default value is 2 seconds.

Zde je ukázkový výstup:

# watch -n 10 -d ls -lt

Every 10.0s: ls -lt                                             Tue Feb 14 12:27:43 2017

total 0
-rw-r--r-- 1 root root 0 Feb 14 12:27 new_file_just_created
-rw-r--r-- 1 root root 0 Feb 14 10:46 file1
-rw-r--r-- 1 root root 0 Feb 14 10:46 file2
-rw-r--r-- 1 root root 0 Feb 14 10:46 file3

Tady,

Every 10.0s : is the time interval to run the watch command. i.e. 10 seconds.
ls -lt : is the command to be executed every 10 seconds.
Tue Feb 14 12:27:43 2017 : is the current date and time.

Příklad 1 :Sledování dynamicky se měnícího souboru jako /proc/meminfo

Existuje způsob, jak monitorovat jakýkoli soubor v systému pomocí příkazu watch.

Příkaz:

# watch -n 10 -d  cat /proc/meminfo

vytvoří výstup stavu meminfo každých 10 sekund na obrazovce a zvýrazní, pokud dojde k nějaké změně.

Příklad 2 :hledejte změnu v obsahu adresáře

Dalším vynikajícím využitím příkazu watch je sledovat obsah adresáře a zjistit, zda se nepřidává nebo neodebírá nějaký nový soubor.

# watch -d ls -lt

Přepínač -lt v příkazu ls zobrazí poslední upravený soubor nahoře.

Příklad 3:Odstranění nadpisu/záhlaví z výstupu.

V případě, že nechcete tisknout záhlaví ve výstupu příkazu watch, můžete použít volbu –no-title nebo -t.

# watch -t -d ls -lt

total 0
-rw-r--r-- 1 root root 0 Feb 14 10:47 new_file_just_created
-rw-r--r-- 1 root root 0 Feb 14 10:46 file1
-rw-r--r-- 1 root root 0 Feb 14 10:46 file2
-rw-r--r-- 1 root root 0 Feb 14 10:46 file3

Příklad 4:Zvýraznění kumulativního rozdílu

V případě, že chcete zvýraznit kumulativní rozdíl ve výstupu, můžete v příkazu použít přepínač -d=kumulativní. Například:
Výstup po přidání nového souboru – new_file1 :

Výstup po přidání dalšího nového souboru – new_file2 :


Linux
  1. Důležité soubory souborového systému Linux /proc, které potřebujete znát

  2. Co se stane, když spustím příkaz Cat /proc/cpuinfo?

  3. Linux – propojení /proc/mnt s /proc/mounts?

  1. Příklady příkazů diff v Linuxu

  2. /proc/[pid]/pagemaps a /proc/[pid]/maps | linux

  3. Jak nastavit ssh bez hesla pomocí klíčů RSA

  1. Kdy mám použít /dev/shm/ a kdy /tmp/?

  2. unix:///var/run/supervisor.sock žádný takový soubor

  3. Měly by weby žít ve /var/ nebo /usr/ podle doporučeného použití?