Presumindo bash
ou ksh93
:
- Percorra a lista de URLs
-
Produza o URL para o terminal
while read -r url; do printf 'URL: "%s"\n' "$url" done <urls.txt
-
Crie um nome de arquivo removendo caracteres indesejados do URL (alterando os caracteres que não estão em
A-Za-z0-9
para_
, removendo_
consecutivos). -
Nome do arquivo de saída para o terminal
while read -r url; do printf 'URL: "%s"\n' "$url" outfile="$( tr -s -c 'A-Za-z0-9' '_' <<<"$url" )" printf 'File: "%s"\n' "$outfile" done <urls.txt
-
Use
dirb
e direcione a saída para o arquivowhile read -r url; do printf 'URL: "%s"\n' "$url" outfile="$( tr -s -c 'A-Za-z0-9' '_' <<<"$url" )" printf 'File: "%s"\n' "$outfile" dirb "$url" /usr/share/wordlists/dirb/small.txt -o "$outfile" done <urls.txt
Minha versão faz um pouco mais de sanitização do nome do arquivo do que apenas remover barras.
Além disso, o echo $i
invocará a globalização de nomes de arquivos (teste com i='*'
).
Como não tenho um exemplo do seu arquivo urls.txt
, é difícil dizer mais sobre isso.