標準エラー出力をlessで表示する方法
標準エラー出力をlessで表示する方法を紹介します。
1.問題点
LinuxでC++のビルド作業をしており、gccコマンドで数千ほどのファイルのリンケージを実行してます。
で、実行すると案の定、大量のエラーが出力され、ターミナルのスクロールバーを戻しても先頭のエラーを確認することができません。
標準出力であればパイプでつないでlessで確認できるのですが、次のようなコマンドを実行しても標準エラー出力をlessで拾えません。
% make | less
ということで、標準エラー出力をlessで表示する方法を紹介します。
ここではmakeコマンドを例にしていますが、他のコマンドでもこのお作法が使えると思います。
2.標準出力と標準エラー出力の両方をlessで表示する
標準出力と標準エラー出力の両方をlessで表示するには、次のコマンドを実行します。
% make 2>&1 | less
コマンドの意味は次のとおりです。
まずmakeを実行します。
次の"2>&1"で、標準エラー出力(2)を標準出力(1)と同じファイルディスクリプタにリダイレクトします。
これで標準エラー出力をlessで拾えるようになります。
3.標準エラー出力だけをlessで表示する
標準エラー出力だけをlessで表示するには、次のコマンドを実行します。
% make 2>&1 > /dev/null | less
2のコマンドと異なるのは「> /dev/null」が追加されていることです。
これは標準出力(1)を/dev/nullにリダイレクトする(=破棄する)ことを意味します。
厳密には「1> /dev/null」と書きますが、「>」と書くと1を省略している意味になります。
Posted by yujiro このページの先頭に戻る
- VMをundefineできない場合の対処
- cpanflute2でエラーになる場合の対処
- シェルスクリプトをバイナリ化する「shc」
- OpenSSLで文字列を暗号化・複号化する方法
- sshログインに時間がかかる場合の対処
- vi/vimで範囲指定して置換する方法
- vi/vimでマークした行に移動する方法
- vi/vimで複数行を一括削除する方法
- LinuxでOSキャッシュをクリアする方法
- lessで検索文字列だけを表示する方法
- tailコマンドでファイルがローテートされても追従する方法
- svnでファイルやディレクトリを削除する方法
- phpMyAdminで「unknown system variable 'lc_messages'」となる場合の対処
- Linux(CentOS)でapxsがみつからない場合の対処
- PHP7.3とApacheを連携させる方法
トラックバックURL
コメントする
greeting