默认情况下,fcrackzip 仅使用一个核心/线程。是否可以将任务拆分到多个进程上?
答案1
成立github 上的这个要点这似乎完全实现了你想要做的事情:
使用 xargs 提供 fcrackzip 的多个实例:
logfile=$(date +%Y%m%d%H%M).log
targetfile=test.zip
# Start 1 processes for cracking mixalpha-numeric maximum 5 digits
fcrackzip -c Aa1 -b -l 1-5 --verbose -u $targetfile & >> $logfile &
# Start 62 processes for cracking mixalpha-numeric equal to 6 digits
eval echo\ {A..Z}AAAAA\; | xargs -I % -P 26 fcrackzip -c Aa1 -b -p % --verbose -u
$targetfile >> $logfile &
eval echo\ {a..z}AAAAA\; | xargs -I % -P 26 fcrackzip -c Aa1 -b -p % --verbose -u
$targetfile >> $logfile &
eval echo\ {0..9}AAAAA\; | xargs -I % -P 10 fcrackzip -c Aa1 -b -p % --verbose -u
$targetfile >> $logfile &
tail -F $logfile | grep FOUND