命令
pm2 id <name>
返回一个数组(例如[2]
),我如何从数组中获取第一个元素?
我想将输出保存在 APP_ID=$(pm2 id <name>)
中,所以 APP_ID
最终成为 2
我不熟悉
pm2
,但如果数组是JSON兼容的(看起来确实如此),你可以使用jq
,例如:
$ echo '[2]' | jq '.[0]'
2
$ echo '[3, 2]' | jq '.[0]'
3
这是与其他一些方法相关的问题:get the first (or n'th) element in a jq json parsing
如果输出是“[2]”,则它是一个字符串,而不是一个数组。您只需要把第一个和最后一个字符剪掉即可。
APP_ID=$(pm2 id <name>)
APP_ID=${APP_ID:1: -1}