Encontrei sua pergunta enquanto procurava a mesma resposta para mim.
Desapontado com a resposta aceita, eu vim com uma solução alternativa. É menos que o ideal, mas me permite marcar minha posição no log que estou seguindo less
, que é o ponto principal.
Criei um pequeno script executável (o chamei marklog
) com o seguinte conteúdo e o coloquei no meu caminho:
#!/bin/sh
echo >> $1
echo >> $1
echo >> $1
echo `date` ---------------------------------------------------------------------- >> $1
echo >> $1
echo >> $1
Obviamente, isso só funcionará se você tiver acesso de gravação ao arquivo de log - o que poderia ser um fator decisivo em muitas situações. Também criei esta versão que uso para gravar em arquivos de log que não possuo (mas aos quais tenho acesso sudo):
#!/bin/sh
sudo sh -c "echo >> $1"
sudo sh -c "echo >> $1"
sudo sh -c "echo >> $1"
sudo sh -c "echo `date` ------------------------------------------------------------------------- >> $1"
sudo sh -c "echo >> $1"
sudo sh -c "echo >> $1"
Esses scripts fornecem exatamente o tipo de interrupção visual que eu estava procurando. Existem pelo menos três maneiras de usá-las:
No ponto em que você normalmente pressionaria enter algumas vezes ao usar tail -f
, em vez disso, execute a marklog
partir de outro terminal (fornecendo o caminho para o arquivo de log como argumento).
Use CtrlZpara suspender less
para que você possa executar o script na mesma janela do terminal, mas quando você voltar ao primeiro plano less
(usando fg
, é claro), ele não estará mais no modo 'seguir', portanto, será necessário pressionar ShiftFnovamente ...
Por fim - e essa pode ser a maneira mais conveniente, porque você não precisa digitar o caminho para o arquivo de log: Execute marklog
diretamente less
digitando !marklog %
. Less
substituirá o nome do arquivo atual por %
. No entanto, less
não responderá ao! enquanto estiver no modo 'seguir', será necessário pressionar CtrlCprimeiro para sair do modo de seguir, executar !marklog %
e ShiftFnovamente.
Com o método 3, você também recebe o bônus adicional do histórico de comandos de Less: Basta pressionar o botão !
e usar a seta para cima para selecionar o comando mais recente (para mim, é sempre marklog
).
Espero que isso ajude alguém tanto quanto já me ajudou.