因此,我尝试添加一个倒计时器,以在 john 根据用户输入运行时在屏幕上显示,我可以让计时器在 john 之后运行,但不能同时运行,这是我到目前为止所拥有的。
timeout=$(($timeout))
while timeout $timeout /usr/sbin/john --fork=2 NT.out &>/dev/null >> johnlog.txt; do
while [ $timeout -gt 0 ]; do
echo -ne "$timeout\033[0K\r"
sleep 1
: $((timeout--))
done
done
任何帮助深表感谢。
答案1
timeout=$(($timeout))
Crack_hashes_with_john() {
echo
echo "How long would you like john to run for?"
echo
read -p "Answer in Seconds: " timeout
cd /root/.john && rm john.pot &>/dev/null
cd /root/libesedb-20181229/esedbtools
./esedbexport -t /root/Desktop/ntds $ditpath
cd /root/Desktop/ntds.export/
mkdir extract
python /root/ntdsxtract/dsusers.py datatable.4 link_table.7 extract/ --lmoutfile LM.out --ntoutfile NT.out --passwordhashes --pwdformat john --syshive $binpath &>/dev/null
cd extract
rm johnlog.txt &>/dev/null
echo -e "\e[31m ================== \e[0m"
echo -e "\e[1;31m Cracking with John \e[0m"
echo -e "\e[31m ================== \e[0m"
sleep 1
timeout $timeout /usr/sbin/john --fork=2 NT.out &>/dev/null >> johnlog.txt
while [ $timeout -gt 0 ]; do
echo -ne "$timeout\033[0K\r"
sleep 1
: $((timeout--))
done
cat johnlog.txt
}
这是整段代码,因为它是在 john 运行后计时器运行的那一刻,但我希望它在 john 运行时运行。