Fórum Root.cz
Hlavní témata => Software => Téma založeno: Jiri Polacek 24. 02. 2016, 14:51:17
-
Ahoj,
tento prikaz me funguje:
cat /var/log/messages | sed -f mac2client | grep LM02
tento prikaz me nefunguje a nevim proc - nic nevypisuje:
tail -f /var/log/messages | sed -f mac2client | grep LM02
v souboru mac2client mam seznam mac adres a prislusnych hostnames napr:
s/08:60:6e:3b:df:93/LM01/
Poradite me co je pricinou?
Diky
-
Zatímco cat vysype na výstup celý soubor, tail -f vrací jen to, co bylo za jeho běhu do souboru přidáno. Pokud se do souboru nic nepřidává, tak na výstupu toho tailu nebude nikdy nic. On se hodí ve chvíli, kdy je potřeba třeba hlídat nově příchozí hlášky do logu. Ty staré ale nikdy neukáže.
-
Ahoj,
diky za odpověď, tomu rozdilu mezi tail -f a cat rozumim
Jedna se mi o to ze pokud dam
tail -f /var/log/messages | sed -f mac2client | grep LM02
nezobrazi se zadny do logu pribyvajici záznamy, nezobrazi se nic, presto ze záznamy do logu pribyvaji
Ještě bych chtěl poznamenat ze tyto varianty bez grepu na konci funguji obe podle ocekavani:
tail -f /var/log/messages | sed -f mac2client
cat /var/log/messages | sed -f mac2client
Tato varianta funguje taky podle ocekavani
cat /var/log/messages | sed -f mac2client | grep LM02
Pouze toto nedela nic
tail -f /var/log/messages | sed -f mac2client | grep LM02
Linux cz01cent01.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Diky
-
Pravdepodobne se ti bufferuje ten sed, je to standardni chovani, pokud nevypisuje na terminal. Da se to vypnout, lepe receno nastavovat, nejjednodussi by konkretne v tomto pripade bylo nacpat tu filtraci uz do sedu.
-
po vypnuti bufferovani je to ok ;-)
tail -f /var/log/messages | sed -uf mac2client | grep LM02
Diky