そのため、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の実行中にタイマーを実行したいと思います。