web-dev-qa-db-ja.com

大量の出力にもかかわらず、猫の出力をすぐに停止するにはどうすればよいですか?

コマンドが間違っていることに気付いたときに、STDOUTへの出力を停止する方法を探しています。たとえば、非常に大きなファイルを誤って作成した場合です。通常、長押しすると最終的に停止しますctrlcですが、時間がかかります。

よりすぐに出力を停止する方法はありますか?

9
CHK

Ctl-zを実行してバックグラウンドにし、PIDを強制終了できます。

$ ctrl z(バックグラウンドで)

$ kill -9 {pid}「バックグラウンド化されたばかりのプロセス」

10
user30141

多くの場合、データはすでにディスプレイに送信されており、「長い時間」はデータを表示しようとする端末です。タスクに何かをしても役に立たない(つまり、 Ctrl+Z または Ctrl+C)、より高速な端末か、データをバッファリングするための何かが必要です。

ファイルの上部と下部のどちらを表示するかに応じて、lesstailを介して大きな出力をパイプします。どちらも端末に送信されるデータの量を簡単に制御できるためです。そして、それが私が望むものでない場合は、プログラムを閉じます。

2
Darth Android

別のターミナルへの切り替え(経由 CTRL+F1 に F6 テキストモード、またはscreenで新しいウィンドウを開く CTRL+AC)いずれかを押した後 CTRL+Z または CTRL+C 元の端末がすべての改行をスキップして、より短い時間で出力の最後の行に直接ジャンプするようにします

1
Tobias Kienzler

あなたはそれをmoreまたはlessにパイプすることができるはずです

cat large_file.txt | less

その時点で、答えをページングして:q

特定のエラー/問題を探している場合は、grepを使用して回答を整理することもできます。

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

0
John Lillard