我必须检查200个http URL的状态,并找出其中哪些是断开的链接.链接存在于一个简单的文本文件中(比如我的〜文件夹中的URL.txt).我正在使用Ubuntu 14.04,我是一个
Linux新手.但我知道bash shell非常强大,可以帮助我实现我想要的.
我的确切要求是读取包含URL列表的文本文件,并自动检查链接是否正常工作,并将响应写入包含URL及其相应状态(工作/损坏)的新文件.
解决方法
我创建了一个文件“checkurls.sh”并将其放在我的主目录中,其中urls.txt文件也位于该目录中.我使用了给文件的执行权限
$chmod x checkurls.sh
checkurls.sh的内容如下:
#!/bin/bash while read url do urlstatus=$(curl -o /dev/null --silent --head --write-out '%{http_code}' "$url" ) echo "$url $urlstatus" >> urlstatus.txt done < $1
最后,我使用以下命令从命令行执行 –
$./ checkurls.sh urls.txt
瞧!有用.