- 私のファイルには500のURLがあります。
- このURLに表示されるすべてのリンクを抽出する必要があります。
Lynxを使用してファイルを読み取り、ファイルのリンクを抽出する方法は?
以下の例は、file.txt
1行に1リンク、合計500行です。
https://itunes.apple.com/
https://play.google.com/
...など
答え1
拡張スクリプトは次のとおりです。
#!/bin/sh
cat file.txt |while read url
do
lynx -listonly -dump "$url"
done |
awk '/^[ ]*[1-9][0-9]*\./{sub("^ [^.]*.[ ]*","",$0); print;}'| \
sort -u
lynxが認識するすべてのタイプのURLが許可されます(例:ftpを含む)。スクリプトは結果をソートして重複を削除します(Lynxはデフォルトではこれを行いません)。
追加資料:
答え2
リストでlist.txtを呼び出します。
for i in $(cat list.txt)
do
lynx -accept_all_cookies -dump $i |grep "http" |sed -e "s/^.*http/http/"
done
出力をいくつかのファイルにリダイレクトすることをお勧めします。