File tree Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,7 @@ urls=$(grep -oP '(http|ftp|https):\/\/([a-zA-Z0-9_-]+(?:(?:\.[a-zA-Z0-9_-]+)+))(
38
38
fail_counter=0
39
39
40
40
FAILED_LINKS=()
41
+ CHECKED_LINKS=()
41
42
for item in $urls ; do
42
43
# echo $item
43
44
skip=0
@@ -53,15 +54,18 @@ for item in $urls; do
53
54
filename=$( echo " $item " | cut -d' :' -f1)
54
55
url=$( echo " $item " | cut -d' :' -f2-)
55
56
echo -n " Checking $url from file $filename "
56
- if ! curl --head --silent --fail " $url " 2>&1 > /dev/null; then
57
- echo -e " \033[0;31mNOT FOUND\033[32m\n"
57
+ if [[ $( echo ${CHECKED_LINKS[@]} | fgrep -w $url ) ]]; then
58
+ echo -e " \033[36malready checked\033[0m"
59
+ elif ! curl --head --silent --fail " $url " 2>&1 > /dev/null; then
60
+ echo -e " \033[0;31mNOT FOUND\033[0m"
58
61
FAILED_LINKS+=(" $url from file $filename " )
59
62
(( fail_counter= fail_counter+ 1 ))
60
63
else
61
- printf " \033[32mok\033[0m\n "
64
+ echo -e " \033[32mok\033[0m"
62
65
fi
66
+ CHECKED_LINKS+=(" $url " )
63
67
done
64
68
65
69
echo " Failed files:"
66
70
printf ' %s\n' " ${FAILED_LINKS[@]} "
67
- exit $fail_counter
71
+ exit $fail_counter
You can’t perform that action at this time.
0 commit comments