Это зависит от того, что делает устройство записи.
Если устройство записи перезапишет существующий файл, то читатель будет видеть новое содержание, когда устройство записи настигнет читателя, если когда-либо. Если устройство записи и средство чтения продолжаются в переменных скоростях, читатель может альтернативно видеть старое и новое содержание.
Если устройство записи усечет файл, прежде чем он начнет писать, читатель будет работать против конца файла в той точке.
Если устройство записи создает новый файл, затем перемещает новый файл в старое название, читатель будет продолжать читать из старого файла. Если открытый файл перемещен или удален, процессы, которым открыли файл, продолжают читать из того же самого файла. Если файл удален, это на самом деле остается на диске (но без способа открыть его снова), пока последний процесс не закрыл его.
Системы Unix имеют тенденцию не иметь обязательные блокировки. Если приложение хочет гарантировать, чтобы его компонент устройства записи и его компонент читателя не ступали на пальцы ног друг друга, это до разработчика для использования надлежащей блокировки. Существует несколько исключений, где файл, это открыто ядром, может быть защищен от записи пользовательскими приложениями, например, смонтированным циклом изображением файловой системы или исполняемым файлом, это выполняется на некоторых вариантах Unix.
еще
more
старая утилита. То, когда текст передал ему, является слишком большим для установки на одном экране, это разбивает на страницы его. Можно прокрутить вниз, но не.
Некоторые системы hardlink more
кому: less
, предоставление пользователям со странным гибридом двух программ, который похож more
и выходы в конце файла как more
но имеет некоторых less
функции, такие как назад прокрутка. Это - результат less
more
режим эмуляции. Можно включить этот режим эмуляции временно с LESS_IS_MORE=1 less ...
.
more
escape-последовательности сырых данных передач по умолчанию. Escape-последовательности говорят Ваш терминал, который окрашивает для отображения.
скрыть
less
был записан человеком, который был сыт по горло more
неспособность прокрутить назад через файл. Он повернулся less
в проект с открытым исходным кодом и со временем, различные люди добавили новые опции к нему. less
является крупным теперь. Вот почему некоторые маленькие встроенные системы имеют more
но нет less
. Для сравнения, less
источник является более чем 27 000 строк долго. more
реализации являются обычно только немногим более, чем 2 000 строк долго.
Для получения less
для передачи необработанных escape-последовательностей необходимо передать его -r
флаг. Можно также сказать этому только передавать символы ESC ANSI путем передачи его -R
флаг.
Посмотрите less
Часто задаваемые вопросы для получения дополнительной информации: http://www.greenwoodsoftware.com/less/faq.html
большинство
most
как предполагается, больше, чем less
. Это может отобразить несколько файлов за один раз. По умолчанию это усекает длинные линии вместо того, чтобы перенести их и обеспечивает слева/справа прокручивающий механизм. большинство - веб-сайт, не имеет никакой информации о most
функции. Его страница справочника указывает, что скучает по крайней мере по некоторым less
функции, такие как запись файла журнала (можно использовать tee
для этого, хотя) и внешнее выполнение команды.
По умолчанию, most
использует странные non-vi-like привязки клавиш. man most | grep '\<vi.?\>'
ничего не возвращает так, что может быть невозможно поместить most
в подобный vi режим.
most
имеет способность распаковать gunzip-сжатые-файлы перед чтением. Его строка состояния имеет больше информации, чем less
.
most
escape-последовательности сырых данных передач по умолчанию.
Давайте посмотрим, что сделала ваша первая команда: она создала символическую ссылку math
в вашей текущей папке, которая указывает на абсолютный путь к текущей папке. Позволяет проверить немного ближе:
user@host:/free$ ls -al /free
total 4
drwxrwxrwt 2 root root 40 Oct 14 10:29 .
drwxr-xr-x 24 root root 4096 Oct 1 22:28 ..
user@host:/free$ ln -vs /free math
‘math’ -> ‘/free’
user@host:/free$ ls -al /free
total 4
drwxrwxrwt 2 root root 60 Oct 14 10:29 .
drwxr-xr-x 24 root root 4096 Oct 1 22:28 ..
lrwxrwxrwx 1 user users 5 Oct 14 10:29 math -> /free
Теперь, если добавить некоторые файлы в $ PWD
и выполнить перемещение:
user@host:/free$ touch a b
user@host:/free$ mv -vi math/ /tmp/Q
‘math/’ -> ‘/tmp/Q’
‘math/math’ -> ‘/tmp/Q/math’
‘math/b’ -> ‘/tmp/Q/b’
‘math/a’ -> ‘/tmp/Q/a’
removed ‘math/math’
removed ‘math/b’
removed ‘math/a’
mv: cannot remove ‘math/’: No such file or directory
В основном, он перемещает весь каталог, на который указывает math
, в место назначения. Поскольку он указывает на текущий каталог, он полностью перемещается туда, куда он находится. Если бы вы оказались где-то прямо над местом назначения, это могло бы привести к интересной проблеме закольцовывания.
Если нажать C-a H
, все будет записано в файл с именем screenlog.X
(где X - число, начинающееся с 0).
Краткий ответ:
Просто используйте меньше
и забудьте о больше
Более длинная версия:
больше
- старая утилита
Вы не можете просматривать пошагово с большим, вы можете использовать космос для просмотра страницы или вводить строки, то есть об этом.
меньше
больше
+ больше дополнительных функций
Вы можете просматривать страницы как вверх, так и вниз, искать
Есть одно приложение, в котором я предпочитаю больше
меньше
:
Для проверки моих ПОСЛЕДНИХ измененных файлов журнала (в / var / log /
), Я использую
ls -AltF | подробнее
.
В то время как less
удаляет экран после выхода с q
, more
оставляет на экране те файлы и каталоги, которые указаны ls
, избавляя меня от запоминания их имен для исследования.
(Если кто-нибудь знает параметр или конфигурацию, позволяющую less
сохранять текст после выхода, это сделает этот пост устаревшим.)
less
больше, но большеmore
чемmore
таким образом,more
меньшеless
, так используйте большеless
если Вы хотите меньшеmore
. (...), Еслиless
больше, чемmore
,most
больше, чемless
.” — Slackware основы – J. A. Corbal 30.06.2013, 23:22notquite
– vol7ron 22.06.2017, 05:04