Bash AWK单线无法打印

时间:2018-08-27 18:22:04

标签: bash awk

期望打印出abc,但每次都什么也没得到。

echo abc=xyz | g="$(awk  -F "=" '{print $1}')" | echo $g

1 个答案:

答案 0 :(得分:0)

管道不是一组单独的分配。但是,您可以按以下方式重写当前代码:

|   score |  rate | location | coalesce |
|---------|-------|----------|----------|
|    0-99 | 10-15 |        A |        3 |
|    0-99 |   5-9 |        A |        2 |
| 100-110 | 10-15 |        A |        6 |
| 100-110 |   5-9 |        A |        0 |
|    0-99 | 10-15 |        B |        1 |
|    0-99 |   5-9 |        B |        0 |
| 100-110 | 10-15 |        B |        0 |
| 100-110 |   5-9 |        B |        7 |

但是,在没有中间分配的情况下,以Bash为中心的解决方案可以利用here字符串。例如:

result=$(
    echo 'abc=xyz' | awk -F '=' '{print $1}'
)
echo "$result"

其他解决方案也是可行的,但这足以使您朝正确的方向开始。