#!/bin/sh

# checklinks - parcourt toutes les URL internes  un site web, en 
#   rendant compte de toute erreur dans le fichier traverse.errors.

lynx="/usr/local/bin/lynx"      # il faudra peut-tre adapter ceci

# Dtruit tous les fichiers produits par le parcours transversal de lynx 
#    la fin du script:
trap "/bin/rm -f traverse*.errors reject*.dat traverse*.dat" 0

if [ -z "$1" ] ; then
  echo "Syntaxe: $0 URL" >&2 ; exit 1
fi

$lynx -traversal "$1" > /dev/null

if [ -s "traverse.errors" ] ; then
  echo -n "J'ai trouv" $(wc -l < traverse.errors) "erreurs. "
  echo $(grep '^http' traverse.dat | wc -l) pages contrles sur ${1}:
  sed "s|$1||g" < traverse.errors
else
  echo -n "Je n'ai trouv aucune erreur. ";
  echo $(grep '^http' traverse.dat | wc -l) pages contrles sur ${1}
  exit 0
fi

baseurl="$(echo $1 | cut -d/ -f3)"
mv traverse.errors ${baseurl}.errors
echo "(Copie de cette sortie sauvegarde dans ${baseurl}.errors)"

exit 0
