![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| tail-f | wannalearn | Programação Shell Script e | 4 | 04-10-2007 06:22 |
| Cauda? | qfwfq | Programação Shell Script e | 7 | 06-19-2006 02:15 |
| cauda comando .. | amon | Programação Shell Script e | 2 | 06-02-2006 05:36 |
| Ajuda no script usando cauda | JISC | Programação Shell Script e | 4 | 05-19-2006 04:15 |
| como sed com cauda | redlotus72 | UNIX para Dummies Perguntas & Respostas | 1 | 08-30-2005 06:27 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Trabalhando em HP-UX 10/20. Eu quero acabar de escrever um script de shell para lidar com o seguinte problema, mas, por enquanto estou apenas brincar com ele na linha de comando.
Veja o que estou tentando fazer basicamente: tail-f log_X | grep n> log_Y Estou fazendo um tail-f em log_X. Uma vez que se vê "n", gostaria para que grep, então colocá-la em log_Y. Não é o que torna a log_Y. Tenho sido manualmente adicionando "n" para log_X, ea cauda comando é definitivamente a ver, mas ela não consegue passá-la para log_Y. Por quê? Será porque o comando está a tentar "completar" o tail-f antes que executa a> (redirect) para log_Y? Existe uma maneira melhor para esta abordagem? TYIA |
|
||||
|
tente usar
tail-f log_X | grep n >> log_Y Não estou certo de que este seria o trabalho ... Posso acrescentar que os comandos em ambos os lados de um tubo de "|" são iniciados e executados sincronamente ... e sabemos que qualquer comando como grep irá terminar apenas se vê um EOF, que "tail-f" não vai dar, pois está em um loop infinito à procura de novas linhas de aposta ... então ... tail-f log_X | grep n deve ser trabalhar bem e dar "novas" linhas com "n" para stdout como e quando se anexar a log_x ... Pode ser um problema com o redirecionamento, para uso redirecionamento no modo append >> e deixe-nos saber! Felicidades! Vishnu. |
|
||||
|
Vishnu:
Tentei usando tail-f log_X | grep n>> log_Y ontem ... não funcionou. Também tentei um rabo-f log_X | grep n>! log_Y. Não vá. A razão pela qual eu estou usando tail-f é porque quero que isto seja uma "real-time monitor". Após "n" aparece, eu preciso de notificá-lo para mim. Quaisquer outras ideias? TYIA |
|
||||
|
ver esses lugares .. parece que piping "tail-f" trabalha com alguns SOs e não funciona com alguns ...
http://www.computing.net/solaris/www...orum/1734.html http://www.zsh.org/mla/users/1999/msg00360.html você não quer dizer ... tail-f log_X | grep n trabalharam em seu sistema .. ou seja, você pode ver as coisas no seu terminal .. Felicidades! Vishnu. |
|
|||||
|
Tente este: Código:
(tail -f /var/log/messages & ) | grep -i login Se deixar correr na cauda backgroundit permite grep trabalho. Como cauda dumps para stdout, grep é aguardar pacientemente, a leitura stdin. Isso apenas para despejar sua tela até que você bateu algo como CTRL + C. Se você quiser algo mais elaborado, você poderia enviado a cauda de saída para um outro fd, grep e ter lido a partir de que fd. Boa sorte! |
|
|||||
|
Oh diabo, por que não - aqui está um pouco melhor design. Executá-la no fundo, e ele vai escrever o usuário acima definidos quando se vê a frase exata (também definidas acima). Não é a pertiest, e provavelmente não será o mais rápido se os registros cresce muito rapidamente, mas funciona, e é fácil de se modificar a e-mail, página, seja qual for ... Basta ter o cuidado de que não se inundar-te, se verificar a mesma mensagem centenas de vezes ... Código:
#! /bin/ksh
search_word="search terms"
write_user=user_id
tail -n1 -f /path/to/log |&
while read -p output_line; do
[[ $output_line == *"$search_word"* ]] && {
print "$output_line" | write $write_user
}
done
|
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|