我是 Bash 脚本的新手,在运行以下脚本时,我总是收到“无法解析主机”的提示。我知道它一定是斜杠或逗号,但我试了所有方法,还是搞不清。我缩短了此示例的站点编号。提前感谢任何线索!
1 #!/bin/bash
2
3 sites="https://www.example.com/comm/swift-lines/2012-advocate.html,
4 "
5 for site in ${sites//, }
6 do
7 #code='curl -I -L -k -s -o /dev/null -w "%{http_code}" "http://${site}"'
8
9 code=`curl -I -w "%{http_code}" "http://${site}"`
10 echo "${site} ${code}"
11 done
答案1
- 你也可以像在其他语言中一样在 bash 中使用数组,我认为在这种情况下这是一个更好的解决方案。使用关键字
declare
:
#!/bin/bash
# Declare the sites array:
declare -a sites=(
"google.com"
"stackoverflow.com"
)
# We loop every element in the sites array:
for site in "${sites[@]}"
do
code=`curl -I -w "%{http_code}" "http://${site}"`
echo "${site} ${code}"
done