Как я могу немедленно остановить вывод кота, несмотря на массивный вывод?


9

Я ищу способ остановить вывод на STDOUT, когда я понимаю, что команда неверна. Например, если я случайно кошка очень большой файл. Обычно это в конечном итоге останавливается, если вы удерживаете ctrl+c , но это занимает много времени.

Есть ли способ остановить вывод быстрее?

Ответы:


10

Вы можете запустить ctl-z, чтобы создать фон, а затем убить PID.

$ ctl z (для фона)

$ kill -9 {pid} 'процесса, который только что появился'


1
Зачем ты это делаешь, kill -9если в этом нет необходимости?
benjwadams

2

Часто данные уже отправлены на дисплей, и «долгое время» - это терминал, пытающийся отобразить данные. Ничего не поделаешь для выполнения задачи (т. Е. Ctrl+ ZИли Ctrl+ C), вам понадобится либо более быстрый терминал, либо что-то еще для буферизации данных.

Я передаю большие выходные данные lessи в tailзависимости от того, хочу ли я просмотреть верх или низ файла, так как оба позволяют мне легко контролировать объем данных, отправляемых на терминал, и закрывать программу, если это не то, что я хочу.


1

Переключение на другой терминал (через CTRL+ , F1чтобы F6в текстовом режиме, или открыть новое окно в screenчерез CTRL+ A, C) после нажатия либо CTRL+ Zили CTRL+ Cвызовет оригинальный терминал пропустить пытаюсь сделать все символы перевода строки и перейти непосредственно к последней строке вывода в более короткие сроки


Работает ли это, когда "длительное время" вывод поступает в сетевой буфер и занимает много времени для передачи всего текста на принимающий терминал? Если да, то как можно достичь того же, скажем, в терминаторе? Я переключаюсь на другую вкладку и ничего. С другой стороны, если я убью сессию ssh, используя ~. тогда это немедленно останавливается. Я бы предпочел не убивать сессию, хотя.
vontrapp

@vontrapp Хороший вопрос (который, вероятно, стоит нового вопроса ). Я предполагаю, что это не сработает, но по SSH для длительных процессов, использующих tmuxили screenвсегда
являющихся

0

Вы должны быть в состоянии передать это moreилиless

cat large_file.txt | less

В этот момент вы можете пролистать ответ и выйти с :q

Вы также можете использовать, grepчтобы помочь разобраться в вашем ответе, если вы ищете конкретную ошибку / проблему.

http://www.westwind.com/reference/os-x/commandline/pipes.html


1
ЧК поинтересовался ситуацией с УЖЕ запущенным процессом. Вы не можете использовать меньше / больше в этом случае.
сентябрь

Хотя это и не ответ на прямой вопрос, это имеет значение в том смысле, что оно говорит о том, как избежать ситуации до того, как это произойдет.
TecBrat
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.