このようなことが何度も起こっているようです。このようなサイクルを繰り返しながらログの違いを探してみましょう。たとえば、
start
1
2
3
end
start
1
2
4
3
end
ターミナル出力ページをスクロールするのではなく、ログに構造を割り当てます。このツールは、watch
特定の間隔でコマンドを実行し、変更を強調表示する機能も使用できます-d
。プログラムの出力を開始/終了間の塊に分割する簡単な方法はありますか?
サイクル内の固定線でリアルタイムで変更を確認することで変更を確認できれば幸いです。サイクルをスクロールできることもお勧めします。
答え1
この間、私はいくつかの小さな記事を書いた。良くありませんが、作業は完了です。
https://github.com/pknowles/watch_cycles
cat log.txt | ./watch_cycles "start"
たとえば、次のようになります。
page 2/2
start
1
2
4
3
end
矢印キーは前のページまでスクロールします。
答え2
新しいユーティリティpw
(パイプライン監視)まさにこの目的のための機能があります。
tail -f log.txt | pw
pw
データは内部FIFOバッファを介してポンピングされ、スナップショットが撮影され表示され、上下のCtrlP矢印キーまたはおよびを使用して簡単にアクセスできる20画面の深さのスナップショット履歴にプッシュされますCtrlN。
デフォルトでは、スナップショットは10秒ごとまたは1秒の読み取りタイムアウトがあるたびに作成されますが、これらのタイムアウトは調整できます。
これトリガー機能は繰り返しパターンの一定の部分を画面上で停止させます。デモビデオでこれを確認できます。
ただし、pw
Vi検索と同様のコマンドを使用してトリガーモードに簡単に入ります/pattern
。?pattern
トリガモードでは、FIFO の 1 つ以上の行に一致する項目が発生するたびにディスプレイが更新されます。まだやるべきことがたくさんあります。
以下のようにプログラムを開始する前にトリガーを指定できます。
# trigger: match foo on line 1, bar on line 3
pw -e /foo -e 3/bar
トリガーやその他の設定を希望の方法で設定した場合は、セッションの保存:s filename
と呼び出しを使用できますpw -f filename
。セッションには、フィルタやトリガ、垂直分割構成などの表示設定もあります。ファイルには、簡単に編集および調整できる、および/
(?
コロン)コマンドのみが含まれています。: