gpt4 book ai didi

bash - 将 jps 输出解析为数组

转载 作者:行者123 更新时间:2023-12-04 05:37:00 25 4
gpt4 key购买 nike

我在 bash shell 中使用 jps 来查找所有正在运行的 java 进程。我希望能够使用 jps 输出的 PID 列表。我可以使用成功将它们打印到屏幕上

jps | awk '{print $1}'

但我希望有多个进程在运行,我想将它们放在一个数组中。我找到了另一个他们使用的例子
awk '{arr[$1]}'

因为他们想要在数组中的输出是单列。这类似于我想放入数组的 PID 列。

是否可以将它们通过管道传输到数组中?我无法在需要时更改数组的索引。有没有更好的方法来做到这一点?

任何指导都会受到热烈欢迎。
谢谢。

最佳答案

根据您的第一个示例,您应该能够使用以下命令捕获 bash 数组中的所有进程 ID

pids=( $(jps | awk '{print $1}') )

一旦进入数组,它们就可以迭代:
for pid in "${pids[@]}"; do
echo $pid
done

或单独访问
echo "${pids[0]}"
echo "${pids[1]}"

存储在数组中的总数可以通过 ${#pids[@]} 找到。 .

关于bash - 将 jps 输出解析为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11797450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com