2011-12-20 9 views
0

時々、 ">>"を使用してコマンドの出力情報をすべてログファイル にリダイレクトしますが、そのログをチェックすると少し不便ですinfo info だから、出力情報の最後の行をログにリダイレクトできるのだろうかと思う。コマンド実行時の出力ファイルの簡略化方法

このようなスクリプトを実行すると、 コマンドA if [$? -eq 0]、その後 はLOG_FILE Fiの とAの実行中に停止システム>> "OK" >> LOG_FILE他 エコーは、 "失敗した" エコー、私はLOG_FILEで何を見つけるのだろうか?

+0

は、あなたがお勧めするすべての情報をありがとう:)(しかし、初心者として、私はあなたの言葉の全体的な意味を得ることができません) – erical

+0

謝罪;私はその質問を間違って読んで、私のコメントは別の問題を目指していました。あなたの質問に無関係だったので、私はそれを削除しました。 –

答えて

3

あなただけの最後の行したい場合:

your_cmd | tail -n 1 >> output_file.log 
+0

ありがとうございます、それは助けになります! – erical

1

をあなたは、出力の最後の行をリダイレクトすることはできませんが、チェック最後の行(複数可)をすることができます。

tail -1 file 

最後の行が表示されます。 -1を省略すると、デフォルトは-10(最後の10行)です。

それとも、lessを使用することができます。

less file 

をし、ファイルの最後にジャンプするGを押してください。

Oh - と@skjaidevは、最後の行をファイルにフィルタリングする方法をすでに示していました。

+0

あなたの助けをありがとう – erical

0

Trのこの

command | tail -1 >> out_file 
+0

なぜ否定的な投票?私は答えを入力したときにこの質問の答えはありません – Raghuram

+0

あなたの助けてくれてありがとう(多分あなたのskjaidevをコピーしていると考えられていた) – erical

1

tail-1オプションで行うための最善のこと確かですが、あなたはawkでこれを行うことができます -

…|awk 'END{print NR}' <log.file> new.log.file 
+0

ありがとう別の方法を提供しています:) – erical