Jonatan Antoni | 87b6799 | 2021-08-05 08:22:45 +0200 | [diff] [blame^] | 1 | #!/bin/bash |
| 2 | |
| 3 | linkchecker -F csv --check-extern $1 |
| 4 | |
| 5 | OFS=$IFS |
| 6 | IFS=$'\n' |
| 7 | |
| 8 | for line in $(grep -E '^[^#]' linkchecker-out.csv | tail -n +2); do |
| 9 | link=$(echo $line | cut -d';' -f 1) |
| 10 | file=$(echo $line | cut -d';' -f 2) |
| 11 | msg=$(echo $line | cut -d';' -f 4) |
| 12 | src=$(echo $file | sed -E 's/file:\/\/(.*)\/Documentation\/(\w+)\/.*/\1\/DoxyGen\/\2/') |
| 13 | if [ -d $src ]; then |
| 14 | origin=$(grep -Ern "href=['\"]${link}['\"]" $src/src/) |
| 15 | for o in $origin; do |
| 16 | ofile=$(echo $o | cut -d':' -f 1) |
| 17 | oline=$(echo $o | cut -d':' -f 2) |
| 18 | echo "${ofile}:${oline};${link};${msg}" >&2 |
| 19 | done |
| 20 | fi |
| 21 | done |
| 22 | |
| 23 | IFS=$OFS |
| 24 | |
| 25 | exit 0 |