【发布时间】:2015-12-01 17:15:03
【问题描述】:
我正在尝试编写一个简单的脚本来打印网页源代码的前 5 行,然后是页面加载所需的请求时间。目前,我一直在尝试以下方法:
#!/bin/bash
# 进入网站,获取数据
输出=$(curl $1 -s -w "%{time_connect}\n" | (head -n5; tail -n1))
回声“$输出”
但是,在某些页面上,“尾巴”实际上并没有打印出来,这应该是请求的时间,我不知道为什么。
我发现我也可以使用 while 循环来遍历行并打印整个内容,但是有没有办法让我只回显变量的前几行,然后回显该变量的最后一行变量,所以我可以在请求时间之前加上一个标题(例如:请求时间:0.489)?
我希望能够将其格式化为:
echo "HTML: $output\n" echo "请求时间:$requestTime"
谢谢!抱歉,如果这看起来很简单,我对这种语言真的很陌生 :)。对我来说主要的问题是从同一个请求中获取这些数据——执行两个单独的 curl 请求会非常简单。
【问题讨论】:
标签: bash loops curl printing lines