0
私は、ディレクトリから0の初期点からカバレッジデータをキャプチャする行lcov -c -i -d . -o cov_init.info
を持っていますが、いくつかのディレクトリを無視したいとします。私は条件文を使うことを考えていましたが、linuxを使い慣れていて、lcovに表示させたくないディレクトリに関する条件文を書く方法がわからないレポートからいくつかのディレクトリを無視するにはlcovメソッドがあります
私は、ディレクトリから0の初期点からカバレッジデータをキャプチャする行lcov -c -i -d . -o cov_init.info
を持っていますが、いくつかのディレクトリを無視したいとします。私は条件文を使うことを考えていましたが、linuxを使い慣れていて、lcovに表示させたくないディレクトリに関する条件文を書く方法がわからないレポートからいくつかのディレクトリを無視するにはlcovメソッドがあります
すべての外部ソースあなたはより具体的にしたい場合は
lcov -c -i -d . --no-external -o cov_init.info
、明示的に削除するかを指定する--remove
オプションを使用します(例えば、システム/標準ライブラリ)あなたのカバレッジレポートからは、例えば、LCOVコマンドで--no-external
オプションを使用しますあなたのトレースファイル。構文は、例えば:、lcov --remove tracefile pattern1 [pattern2...] -o new_tracefile
ある
lcov --remove cov_init.info "/path1/to/exclude*" "/local/package/lib/*" -o cov_init2.info
パターンがない正規表現のように、シェルのパターン/ワイルドカードとして解釈されることに注意してください。
あなたは 'iconv ....のようなものを試しましたか? grep -E -v '/ path1/to/exclude |/path2/to/exclude |/path3/to/exclude | ....' '?作業のために1つのdirを取得し、次に '|'( 'grep'" OR "'演算子)で区切って追加します。がんばろう。 – shellter
@shellterあなたは私に構文の詳細を教えてくれますか?例えば、/ path1/to/excludeのように書かれているのはなぜですか? –
'/ path1/to/exclude'などは厳密にはplaceholderです。 'iconv'の出力を見直して、除外するディレクトリを決めてから、'/path1/... |/path2/... | .... 'のようなリストをアセンブルしなければなりません。' -v 'オプションは「検索対象を含む行をスキップする」ことを意味します(必要ならば、否定的なgrepです)。小さなファイルを試して、正規のgrepがどのように動作するかを理解する必要があります。次に 'grep -v srchTarg'、次に' grep -E -v 'excludeTarg1 | excludeTarg2 | ... 'を実行します。その知識を 'iconv'出力に適用します。がんばろう。 – shellter