如何在读取行循环时使输出文件特定于每个变量?Nikto ZSH

如何在读取行循环时使输出文件特定于每个变量?Nikto ZSH

在 Zsh 中,我想要对 URL 列表运行 Nikto 扫描并输出以下内容:

($line)-nikto-results.html

我到目前为止:

while IFS= read -r line;
do nikto -h $line -o $line-nikto-results.html -F html;
done <list-Of-IPs-or-URLs.txt

当我运行它时,只扫描一行并创建一个文件。

答案1

我不会使用read,但可以这样做:

local text="$( 
    < list-Of-IPs-or-URLs.txt 
)"
local -a lines=(
    "${(f@)text}" 
)
local url=
for url in lines; do
  nikto -h "$url" -o ${url}-nikto-results.html -F html
done

相关内容