.txt
カールURLがあるGrepと一致する場合にのみ出力ファイルを保存したいと思います。
たとえば、私が今持っているものは次のとおりです。
xargs -d '\n' -I LINE bash -c "curl -s -o - 'LINE/matchme!'| grep -o 'matchme!'" > saveme.txt < domain.txt
domain.txt
ファイルからURLを読み込みますが、saveme.txt
文字列が一致しなくても+を生成しsaveme.txt
、一致するとカールURLが内部に含まれません。
期待される出力saveme.txt
https://example.com/matchme!?random=param- 私と一緒に!
https://example2.com/matchme! - 私と一緒に!
https://example3.com/matchme! - 私と一緒に!
そのようなスクリプトをどのように書くのですか?
答え1
pattern='matchme!'
while IFS= read -r domain; do
url="$domain/matchme!"
curl -s "$url" | grep -q "$pattern" && printf '%s - %s\n' "$url" "$pattern" >> saveme.txt
done < domain.txt
固定文字列を探している場合は、-F
オプションに追加してください。grep