小编典典

如何从命令输出中获取第二列?

all

我的命令的输出类似于:

1540 "A B"
   6 "C"
 119 "D"

第一列始终是一个数字,后跟一个空格,然后是一个双引号字符串。

我的目的是仅获取第二列,例如:

"A B"
"C"
"D"

我打算用它<some_command> | awk '{print $2}'来完成这个。但问题是,第二列中的某些值包含空格,这恰好是分隔awk字段的默认分隔符。因此,输出混乱:

"A
"C"
"D"

如何干净地获取第二列的值(带有成对的引号)?


阅读 82

收藏
2022-06-28

共1个答案

小编典典

或使用 sed 和正则表达式。

<some_command> | sed 's/^.* \(".*"$\)/\1/'
2022-06-28