gpt4 book ai didi

linux - 如何将命令输出的一部分(在某个字符之后)读入 bash 变量?

转载 作者:太空狗 更新时间:2023-10-29 11:18:27 26 4
gpt4 key购买 nike

所以我有一个命令以下面的形式返回输出

># command
VAR1=ABC
VAR2=DEF
VAR3=123

我想从该命令读取 VAR1 和 VAR3 到 shell 脚本中。所以从逻辑上讲,我运行以下两个命令

># command | grep VAR1
VAR1=ABC
># command | grep VAR3
VAR3=123

如何只捕获第一个等号之后的部分? (因此“${VAR1}”=“ABC”和“${VAR3}”=“123”)。还要注意,任一变量的值中可能还有另一个等号,因此我需要在第一个等号之后保留所有内容,包括后续的等号

最佳答案

你可以使用 awk:

command | awk -F = '/VAR1|VAR3/{print substr($0, index($0, "=")+1)}'
ABC
123

分手:

/VAR1|VAR3/    # searches for VAR1 OR VAR3
index($0, "=") # search for = in the record
substr # gets the substring after first =

关于linux - 如何将命令输出的一部分(在某个字符之后)读入 bash 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30946381/

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