2011-01-16 8 views
0

私が実行した最後のコマンドの出力をtcshからキャッシュすることはできますか?注:最後にいくつかのシェル実行コマンドの出力をキャッシュしました 'スクリプト'?

  • は、私は頻繁に リダイレクト/ティーへの出力を忘れて、tcshのから遅いとverboseコマンドを実行し、結果が 画面がスクロールして見えています。私が考えたソリューション:

    • 「スクリプト」内のすべてを実行します。これは余分なもののように思えます。 最後のいくつかのコマンドだけでなく、すべての出力を保存するためです。私はあなたが巧みにスクリプト出力ファイル を回転させることができると思いますが、これは醜いようです。

    • Screen/rxvt/xterm scrollback。これは実際には出力がかなり大量でない限り、かなりうまく動作します( )。

    • コマンドをもう一度実行してください。明らかに、これは私が を避けることを望んでいるものです(しかし、ファイルシステムのキャッシュのおかげで、再実行はしばしば最初の実行よりも速く です)。

    • そんなに愚かではないようにしてください。まったく希望はありません。

EDIT:一つの思考:私は、私が入力し、すべて の "ポストコマンド" を実行するのtcshすることができますか?たとえば、私が "ls"と言うと、それは秘密に "ls | tee /tmp/lastout.txt"か何かを実行しますか? がこれを行ういくつかのsetenv変数はありますか?

答えて

1

ベストソリューションは、スクロールバックバッファのサイズをscreen(デフォルトは100行)に増やすことです。

screen -h 1000 

または~/.screenrc中:

defscrollback 1000 
+0

実は、私はすでにこれを行って(それを言及するのを忘れてしまった)と思います。スクロールオフする出力は、しばしば10K +の行です。私はかつて "〜/ .screenrc"で "scrollback 1000000"を試みましたが、画面のメモリ使用量が大きくなりすぎました。 – barrycarter

+0

@barry:これは申し訳ありませんが、10,000行について話しているのであれば、質問の最後の箇条書きに集中すべきだと思います。私は厳しいことを意味するわけではありませんが、私は自分のために働いています。リダイレクションと 'tee'はあなたの出力をフィルタリングしているので、サマリーや例外を見るだけで済みます。 –

+0

公正であるために、私はしばしば10K +のラインがあることがわかっているときに、ティー出力の結果をしばしば行います。一般的な最悪のケースは、私が出力を数行しか期待していないが、最終的には10K +で終わる場合です。 – barrycarter

関連する問題