Почему меньше + F говорит «не могу открыть + F»?

0

Я только что прочитал о преимуществах использования less + F по сравнению с tail -f и хотел попробовать. Когда я получаю следующее:

less +F /log/nginx_error.log
less: can't open '+F': No such file or directory

Использование less без опции + F работает как обычно. Что дает?

dev_willis
источник
less +F <filename>работает как положено для меня на моем Rasp Pis с Wheezy и Jessie. Какой диск с Linux вы используете?
Ƭᴇcʜιᴇ007
Похоже, что общий хостинг, на котором работает этот сайт, не использует дистрибутивы двоичных файлов, поэтому я получаю урезанную версию less от BusyBox. Который, я думаю, отвечает на мой вопрос. :)
dev_willis

Ответы:

2

Я протестировал указанную команду на паре Raspberry Pis, одна из которых работает на Wheezy, другая на Джесси, и less +F <filename>команда работала, как и ожидалось, на обоих.

Поскольку мы определили, что вы используете BusyBox (встроенный Linux), а не полный дистрибутив, у вас, вероятно, нет текущей / полнофункциональной версии LESS, которая поддерживает этот +Fфлаг.

Ƭᴇcʜιᴇ007
источник
1

+Fэто не опечатка. Это Fвключает команду, которая является «прокрутить вперед». Из справочной страницы:

Если параметр командной строки начинается с +, то оставшаяся часть этого параметра считается начальной командой less.

Итак, ваша версия lessне поддерживает эту команду. Я полагаю, что в GNU Linux и BSD эта команда была бы реализована - по-видимому, ваша установка BusyBox этого не делает.

slhck
источник
-1

Похоже, это +Fможет быть опечатка для -F. Последний является признанным флагом, который, согласно man-странице,

Вызывает автоматическое завершение меньше, если весь файл может быть отображен на первом экране.

Хотя я не вижу значимости less -Fдля tail -f, это по крайней мере признанный флаг. +Fс другой стороны, нет, поэтому он интерпретируется как имя файла (аргумент) для команды, и, поскольку он не может найти такой файл, он вернется с ошибкой, говорящей об этом.


PS: Выше написано с точки зрения использования версии 481 меньше. Более поздние версии могут отличаться по поведению.

Ярмунд
источник
1
Я не знаю, является ли + F опечаткой или нет, но если это так, есть много мест в Интернете, где он существует таким образом. Например, unix.stackexchange.com/questions/193620/… Я попытался вместо -F, но он указал неверную опцию.
dev_willis
1
Вот статья, которая впервые дала мне знать о опции + F: brianstorti.com/stop-using-tail
dev_willis