コマンドの結果をファイルに保存したいです。

コマンドの結果をファイルに保存したいです。

私はソースコードを分析するためにcppcheckツールを使用しています。

gccコンパイラのシェルプロンプトで次のコマンドを発行しました。

$ cppcheck abc.cpp  

出力は次のとおりです

checking abc.cpp...   
(error) Possible null pointer dereference: <var> - otherwise it is redundant to check if   <var> is null at line 100    
segmentation fault

この出力をファイルとして保存したいので、以下のようにコマンドを発行しました。

$ cppcheck abc.cpp 2> abc.txt

しかし、abc.txtファイルの内容は次のとおりです。

checking abc.cpp...  

最初の行だけを保存し、abc.txtファイルに主要なエラー部分がありません。

ファイルのすべての出力行を取得するには、どのコマンドを使用する必要がありますか? cppcheckのツールマニュアルは次のとおりです。ここ

ベストアンサー1

2コマンドから削除され、>リダイレクト演算子としてのみ使用されます。

を使用すると、2>エラーストリーム(STDERR)をファイルにリダイレクトできます。必要なのは、通常の出力ストリーム(STDOUT)のようです。

cppcheck abc.cpp > abc.txt

欲しいなら両方ファイルにアクセスするには、次のように2(エラーストリーム)を1(標準出力ストリーム)にリンクします。

cppcheck abc.cpp > abc.txt 2>&1

または使用提案されたショートカット構文すべてをつかむ

おすすめ記事