Доброго времени суток коллегиИзвините - может не туда запостил.
Как-то задумался, а можно ли htdigest заставить работать из скрипта, то есть, полностью (без ввода пароля ручками и тд)..
Задумался - начал реализовывать, но столкнулся со следующей проблемой.
htdigest (от apache-2.2.8) не воспринимает то, что ему передается через конвейер, то есть такая конструкция
`echo password | htdigest -c pass.pass unknown takas`
для него не проходит.
Задумался, как можно это реализовать.
Может есть у кого мысли по этому поводу?
Спасибо за содействие (меня это вряд-ли отпустит, так что прошу помощи :)
Да, кстати, вот скрипт основной части:
#!/bin/sh
if [ -z $1 ]; then echo "ech: File name please"
exit 1
else
if [ -f sqp.pass ]; then clear
else
`echo -n > sqp.pass && chmod 600 sqp.pass`
fi
l=1
b=`cat $1 | grep : | cut -d : -f 1,7 | wc -l -- | cut -d " " -f 1,7`
while [ $b -ne 0 ]
do
c=`cat $1 | grep : | cut -d : -f 1,7 > tmp$ && sed "$l""p;d" tmp$ && rm tmp$`
g=`cat $1 | grep : | rev | cut -d : -f 1,7 | rev > tmp$$ && sed "$l""p;d" tmp$$ && rm tmp$$`
`echo $g | ./htdigest sqp.pass unknown $c`
echo $c
echo $g
b=`expr $b - 1`
l=`expr $l + 1`
#echo $l
#echo $b
#echo $c
done
exit 0
fi
Файл паролей может содержать мусор (комментарии '#'), имя и пароль разделяются ':') десятая строка собственно получение кол-ва строк в файле, ну а дальше отфильтровываем мусор (получаем одни имена), потом уже отфильтровываем пароли (переворачиваем, фильтруем, переворачиваем), а вот htdigest - обломс!
FreeBSD 7.0 RELEASE скрипт для /bin/sh