Я бы порекомендовал экран
для такого рода ситуации. (Или запустите команду в другом окне, если это возможно для вас.)
Чтобы запустить отдельному сеансу, просто введите экран
. Затем введите свою команду, но без и
на задний план. Используйте Ctrl A затем D , чтобы отсоединить рабочий сеанс. Использование экрана
, чтобы переписать существующие сеансы и Screen -R
для Reattach.
Две проблемы с меньшим замедлением поиска - это ожидание по трубе и открытие стандартного out/error для чтения. При нормальной работе меньше будет читать достаточно, чтобы заполнить экран и остановить чтение до тех пор, пока вы не перейдете на следующую страницу. Это прекрасно работает, если только вы не читаете из трубы, а программа, пишущая на трубу, не замечает, что идентификатор трубы заполнен, и не спит, пока труба не будет прочитана, и не замедляет процесс записи достаточно медленно, чтобы заполнить следующую страницу. Два самых простых способа изменить такое поведение на меньшее - это искать что-то, чего нет, или вычислить размер стандартного входа. Оба они прочтут полный файл. Следующая проблема заключается в том, что для того, чтобы контролировать меньше, ему нужно получать команды с клавиатуры, поэтому он открывает стандартный out или стандартную ошибку для чтения. Это странно, но работает просто отлично (с несколькими гарантиями, о которых меньше заботятся), но теперь меньше имеет файловую оболочку, открытую для чтения, указывающую на управляющую tty (которую вы хотите, когда контролируете меньше), которую оболочка оболочки замечает, когда вы помещаете вещи в фоновом режиме, и когда меньше пытается прочитать ключ, оболочка переводит его в спящий режим. Вы можете обойти это, искать конец файла в меньшем количестве перед тем, как положить его в фоновом режиме.