Я нашел ваш вопрос, когда искал тот же ответ для себя.
Разочарованный принятым ответом, я нашел обходной путь. Это не идеально, но позволяет мне отмечать мою позицию в журнале, с которым я слежу less
, и в этом весь смысл.
Я создал небольшой исполняемый скрипт (я его назвал marklog
) со следующим содержимым и поместил его в мой путь:
#!/bin/sh
echo >> $1
echo >> $1
echo >> $1
echo `date` ---------------------------------------------------------------------- >> $1
echo >> $1
echo >> $1
Конечно, это работает только в том случае, если у вас есть доступ на запись в файл журнала, что может стать нарушителем во многих ситуациях. Я также создал эту версию, которую я использую для записи в файлы журналов, которые мне не принадлежат (но к которым у меня есть доступ 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"
Эти сценарии обеспечивают именно тот визуальный разрыв, который я искал. Есть как минимум 3 способа их использования:
В точке, где вы обычно нажимаете, введите несколько раз при использовании tail -f
, вместо этого запустите marklog
с другого терминала (предоставив путь к файлу журнала в качестве аргумента).
Используйте CtrlZдля приостановки, less
чтобы вы могли запустить скрипт в том же окне терминала, но когда вы переориентируете less
(используя fg
, конечно), он больше не будет в режиме «следовать», поэтому вам нужно будет нажать ShiftFснова ...
И наконец, - и это может быть наиболее удобным способом, потому что вам не нужно вводить путь к файлу журнала: запустите marklog
непосредственно less
, набрав !marklog %
. Less
заменит текущее имя файла для %
. Тем less
не менее, не будет отвечать на! пока он находится в режиме «следуй», так что тебе придется CtrlCсначала нажать, чтобы выйти из режима следования, запустить !marklog %
, затем ShiftFснова.
С помощью метода 3 вы также получаете дополнительный бонус истории команд Less: просто нажмите !
и затем используйте стрелку вверх, чтобы выбрать самую последнюю команду (для меня это всегда marklog
).
Надеюсь, это поможет кому-то так же, как уже помогло мне.