Bash 在使用grep/sed之前将文件保存为单独的html文件

Bash 在使用grep/sed之前将文件保存为单独的html文件,bash,curl,sed,grep,wget,Bash,Curl,Sed,Grep,Wget,我正在做一个项目,让我可以浏览一些URL。现在我有: #!/bin/bash for file in $1 do wget $1 >> output.html cat output.html | grep -o '<a .*href=.*>' | sed -e 's/<a /\n<a /g' | sed -e 's/<a .*href=['"'"'"]//' -e 's/["'"'"'].*$//' -e '/^$/ d' | grep 'http'

我正在做一个项目,让我可以浏览一些URL。现在我有:

#!/bin/bash
for file in $1
do
wget $1 >> output.html
cat output.html | grep -o '<a .*href=.*>' | 
sed -e 's/<a /\n<a /g' |
sed -e 's/<a .*href=['"'"'"]//' -e 's/["'"'"'].*$//' -e '/^$/ d' |
grep 'http'
done
这将把url的来源保存到一个新的html文件中,然后运行我的grep/seds,然后保存到一个新文件中


现在我正在努力将url保存到一个新的html文件中。救命啊

要为每个URL创建新文件,请在输出文件名中为
wget-O
选项使用URL:

#!/bin/bash

for url; do
   out="output-$url.html"
   wget -q "$url" -O "$out"

   grep -o '<a .*href=.*>' "$out" | 
     sed -e 's/<a /\n<a /g' |
     sed -e 's/<a .*href=['"'"'"]//' -e 's/["'"'"'].*$//' -e '/^$/ d' |
     grep 'http'
done
#/bin/bash
用于url;做
out=“output-$url.html”
wget-q“$url”-O“$out”
grep-o““$out”|

sed-e的/您可以使用:
wget“$1”-O“output-$1.html”
非常好!有没有办法不显示wget的过程?在幕后这么做?我希望它看起来非常平滑,比如./navigator google.com URL。。。URL。。。vs../navigator google.com解析google.com….
nv
=没有详细的…,
-q
=安静
wget-q“$1”-O”输出-$1.html”
@anubhava看起来你已经回答了这个问题。最好将您的答案复制到“答案”字段中,以便Mike可以投票/接受它。
#!/bin/bash

for url; do
   out="output-$url.html"
   wget -q "$url" -O "$out"

   grep -o '<a .*href=.*>' "$out" | 
     sed -e 's/<a /\n<a /g' |
     sed -e 's/<a .*href=['"'"'"]//' -e 's/["'"'"'].*$//' -e '/^$/ d' |
     grep 'http'
done