How can I stop cat output immediately despite massive output?

You can run ctl-z to background it and then kill the PID.

$ ctl z (to background it)

$ kill -9 {pid} 'of process that just got backgrounded'


Often the data has already been sent to the display, and the "long time" is the terminal trying to display the data. Doing anything to the task won't help (i.e., Ctrl+Z or Ctrl+C), you'll need either a faster terminal or something to buffer the data.

I pipe large outputs through less and tail depending on whether I want to view the top or the bottom of the file, since both allow me to easily control the amount of data being sent to the terminal and close the program if it's not what I want.


You should be able to pipe it to more or less

cat large_file.txt | less

At which point you could page through the answer and break out with a :q

You could also use grep to help sort through your answer if you're looking for a specific error/problem.

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


Switching to a different Terminal (via CTRL+F1 to F6 in text mode, or opening a new window in screen via CTRL+A,C) after having pressed either CTRL+Z or CTRL+C will cause the original terminal to skip trying to do all the linefeeds and directly jump to the last line of output in a shorter time