我正在从命令中获取多行输出:
"InstanceId": "i-0e827d54c1b87fa87",
"InstanceId": "i-0c084d7a6ac86dcc2",
"InstanceId": "i-05d669152a3a67ee2",
我需要创建一个仅包含值的列表,例如i-0e827d54c1b87fa87
以便我稍后可以在脚本中迭代它。
如何从i-0e827d54c1b87fa87
中为上面每一行提取"InstanceId": "i-0e827d54c1b87fa87",
并创建一个列表?
答案 0 :(得分:1)
有些方法可以做到这一点 -
#cut is built to do exactly this
cut -c 16-34 file
#Take the substring using awk
awk '{print substr($0, 16, 19)}' file #Take the substring using awk
#Define a double quote as delimiter and print the 4th column
awk -F\" '{print $4}' file
file
是您在问题中显示的输出。如果您不想将该输出放在文件中,可以将其输出到这些命令。