使用shell脚本分析列

balp4ylt  于 2023-01-05  发布在  Shell
关注(0)|答案(1)|浏览(102)

我在shell脚本中有一个sqoop命令,它返回一列一行的输出,如下所示:

你能帮我解析一下上面的输出,只得到值0吗?谢谢。

c86crjj0

c86crjj01#

根据你的图像:

......你需要最后一句台词,对吧?
通过管道将输出连接到tail -n 2应满足

| 0           |
---------------

然后从那里连接到head -n 1,瞧。
另一个方法是删除带有“grep -v -e”^--*$“的虚线,以使

| Identifier  |
| 0           |

然后从那里通过管道传送到tail -n 1以检索最后一行。
最后,通过管道连接到cut -d ' ' -f 2awk '{print $2}'
如果您愿意的话,一种改进是只使用sedawk来完成全部工作。
如果您确定有一列和两行(标题和数据),则所需的行是第四行

1. ----------------
2. | Identifier   |
3. ----------------
4. | 0            |
5. ----------------

因此,对于sed,只需删除该行的前导“pipe-space”和尾随“spaces-pipe”:

$sqoop_command | sed -e '4s/\(^| \)\|\(  *|$\)//g'

在这里,awk在已知时可能看起来更容易:

$sqoop_command | awk 'FNR == 4 {print $2}'

相关问题