在bash脚本中使用awk时没有输出

时间:2012-07-21 08:16:09

标签: bash awk

我的bash脚本是:

output=$(curl -s http://www.espncricinfo.com/england-v-south-africa-2012/engine/current/match/534225.html | sed -nr 's/.*<title>(.*?)<\/title>.*/\1/p')

score=echo"$output" | awk '{print $1}'
echo $score

上面的脚本只在我的控制台中打印newline,而我的输出是

$ curl -s http://www.espncricinfo.com/england-v-south-africa-2012/engine/current/match/534225.html | sed -nr 's/.*<title>(.*
?)<\/title>.*/\1/p' | awk '{print $1}'

SA

那么,为什么我没有从我的bash脚本中获取输出,而它在终端中工作正常我是以错误的方式使用echo"$output"

1 个答案:

答案 0 :(得分:2)

#!/bin/bash

output=$(curl -s http://www.espncricinfo.com/england-v-south-africa-2012/engine/current/match/534225.html | sed -nr 's/.*<title>(.*?)<\/title>.*/\1/p')
score=$( echo "$output" | awk '{ print $1 }' )

echo "$score"

分数变量可能是空的,因为你的语法错了。