团队, 我怎样才能摆脱正在执行的插入中的“t”?还有更好的方法吗?
我的用例正在生成一个 bazel 覆盖率报告,该报告是 test.dat,它正在使用
lcov_cobertura
enter link description here 转换为 dat.xml
转换后 xml 字段缺少一个节点,我正在使用 sed 手动将其重新插入,因为我不知道为什么会丢失它。
我不知道为什么它没有插入那条线或没有插入。所以我在插入它时需要帮助,但我看到一个额外的
t
被插入,用于制表符空间。
raw bazel output test.dat is
DA:931,0
LH:129
LF:693
end_of_record
TN:
SF:src/common/test.go
DA:10,0
DA:11,0
DA:12,0
DA:13,0
DA:14,0
DA:15,0
DA:17,0
DA:18,0
DA:19,0
DA:20,0
DA:22,0
LH:0
LF:11
end_of_record
TN:
SF:src/common/test.go
DA:9,1
使用
lcov_cobertura test.dat -o coverage.xml
转换
cat coverage.xml
< missing the src/common/test.go on line 8. so for now am manually inserting it with sed and it is showing char t
在行首。请指教
<lineToCover branch="false" covered="false" lineNumber="445"/>
<lineToCover branch="false" covered="false" lineNumber="446"/>
</file>
<file branch-rate="0.0" complexity="0" path="src/common/test.go" line-rate="0.18614718614718614" name="src.common.test.go">
<lineToCover branch="false" covered="true" lineNumber="68"/>
<lineToCover branch="false" covered="false" lineNumber="929"/>
<lineToCover branch="false" covered="false" lineNumber="931"/>
</file>
<lineToCover branch="false" covered="false" lineNumber="10"/>
<lineToCover branch="false" covered="false" lineNumber="11"/>
<lineToCover branch="false" covered="false" lineNumber="22"/>
</file>
<file branch-rate="0.0" complexity="0" path="src/common/test.go" line-rate="0.8055555555555556" name="src.common.test.go">
<lineToCover branch="false" covered="true" lineNumber="9"/>
<lineToCover branch="false" covered="true" lineNumber="10"/>
<lineToCover branch="false" covered="true" lineNumber="45"/>
<lineToCover branch="false" covered="true" lineNumber="46"/>
</file>
<file branch-rate="0.0"
预计会看到下面第 8 行的插入
<file branch-rate=0.0 complexity=0 path=src/common/test.go....
<lineToCover branch="false" covered="false" lineNumber="445"/>
<lineToCover branch="false" covered="false" lineNumber="446"/>
</file>
<file branch-rate="0.0" complexity="0" path="src/common/test.go" line-rate="0.18614718614718614" name="src.common.test.go">
<lineToCover branch="false" covered="true" lineNumber="68"/>
<lineToCover branch="false" covered="false" lineNumber="929"/>
<lineToCover branch="false" covered="false" lineNumber="931"/>
t <file branch-rate=0.0 complexity=0 path=src/common/test.go line-rate=0.8055555555555556 name=src.common.test.go>
</file>
<lineToCover branch="false" covered="false" lineNumber="10"/>
<lineToCover branch="false" covered="false" lineNumber="11"/>
<lineToCover branch="false" covered="false" lineNumber="22"/>
</file>
<file branch-rate="0.0" complexity="0" path="src/common/test.go" line-rate="0.8055555555555556" name="src.common.test.go">
<lineToCover branch="false" covered="true" lineNumber="9"/>
<lineToCover branch="false" covered="true" lineNumber="10"/>
<lineToCover branch="false" covered="true" lineNumber="45"/>
<lineToCover branch="false" covered="true" lineNumber="46"/>
</file>
<file branch-rate="0.0"
我的命令是
var=$(grep -e "</file>" test.xml -A 1 -n | grep "<lineToCover" -A 1 -B 1 | sed -n '1p' | cut -d':' -f 1)
sed -i "${var} i \t\t\t\t\tNEWS" test.xml
string_me="<file branch-rate="0.0" complexity="0" path="src/common/test.go" line-rate="0.8055555555555556" name="src.common.test.go">"
sed -i "${var} i \t\t\t\t\t${string_me}" c.xml && cat c.xml