Pesquisando no Logfile passado com algo assim:
gato/caminho/para/arquivo de log | grep -iEw 'algum-endereço-ip-aqui |correspondig-mac-adress-aqui'
Isso me dá todas as linhas de log passadas até agora para que eu possa ver o que aconteceu. Agora eu também quero ver o que está acontecendo, então preciso trocar cat
com tail -f
isso:
cauda -f/caminho/para/arquivo de log | grep -iEw 'algum-endereço-ip-aqui |correspondig-mac-adress-aqui'
Responder1
Você pode usar !!:*
para se referir a todas as palavras, exceto o zero da última linha de comando.
!!
refere-se ao comando anterior, :
separa a especificação do evento da palavra designador, *
refere-se a todas as palavras, exceto o zero.
Isto é da HISTORY EXPANSION
seção do bash(1).
wieland@host in ~» cat foo | grep bar
bar
wieland@host in ~» tail -f !!:*
tail -f foo | grep bar
bar
Você também pode usar a substituição rápida onde ^string1^string2^
repete o último comando, substituindo string1
por string2
:
wieland@host in ~» cat foo | grep bar
bar
wieland@host in ~» ^cat^tail -f
tail -f foo | grep bar
bar
Responder2
- Pressione Upou Ctrl+ Ppara recuperar a linha anterior. Repita se quiser a linha anterior, etc.
- Pressione Homeou Ctrl+ Apara ir para o início da linha.
- Pressione Alt+ Dpara excluir a palavra sob o cursor, ou seja, o comando que deseja substituir.
- Digite o comando que deseja executar agora.
- Pressione Enterpara executar o comando.