#!/bin/sh
usage()
{
echo "RemoveBroken 0.1, a shell script to remove broken link files."
echo "License: MIT, (c) chenzhiqiang"
echo "Usage:"
echo " $0 --help print this help."
echo " $0 --path PATH broken links under this PATH will be removed."
echo " $0 --stdin read PATHs from stdin."
echo " $0 same as $0 --stdin."
}
fromStdin()
{
while [ 1==1 ]
do
read
[ "$REPLY" != "" ] || exit 0
[ ! -L $REPLY -o -e $REPLY ] || unlink $REPLY
done
}
fromPath()
{
find $2 | $0 --stdin
}
if [ $# = 0 ]
then
usage
fromStdin
exit 0
fi
case $1 in
--stdin)
fromStdin
--path)
find $2 | $0 --stdin
--help)
usage
*)
echo "RemoveBroken: unknown usage."
usage
esac