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

311
dev_willis

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

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

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

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

3 ответа на вопрос

2
Ƭᴇcʜιᴇ007

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

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

1
slhck

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

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

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

-1
Jarmund

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

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

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


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

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

Похожие вопросы