-1

我编写了 shell 脚本,它可以比较两个文件,并为我提供 HTML 格式的缺陷结果。但我想改进它,这样我只能得到修改过的文件缺陷,而不是遗留缺陷。我正在使用这个脚本来获取 Coverity 报告。

 while read line; do
n=$((++n))
if echo $line | grep '^[[:space:]]*>' &>/dev/null; then
    if [ $(($n % 2)) -eq 1 ]; then
        # TODO somehow get proper defect number from html
        # echo "Defect num: $(($n/2 + 1))"
        def_num=$((++def_num))
    fi
    echo $line | sed -n -e 's/>[[:space:]]*\(.*\)/\1/p'
    if [ $(($n % 2)) -eq 0 ]; then
        echo "-------------------------------"
    fi


done < <(diff -y -W 200 ./cov-results-base/result.filt ./cov-results-changed/result.filt)

echo "==============================="
echo

echo "Number of defects in old code: $(tac cov-results-base/summary.xml |
                    sed -n '/num/{s|<num>\(.*\)</num>|\1|p; q;}')"
echo "Number of defects in new code: $(tac cov-results-changed/summary.xml |
                    sed -n '/num/{s|<num>\(.*\)</num>|\1|p; q;}')"
4

1 回答 1

0

这使您可以获取文件的最后修改时间并与当前时间进行比较。

now=`date +%s`
modified=`stat -c "%Y" $file`

if [ $(($now-$modified)) -gt 0 ]; then 
     echo "not modified"; 
else 
     echo "modified"; 
fi

我希望这是你想要的。

于 2014-08-22T18:25:25.413 回答