使用 awk 从文件中读取变量?

Jos*_*zar 1 bash awk

我是 awk 的新手,我发现它对于从列中提取数据非常有用。例如在我的文件中我有

Data:     1234      23434     31324
Run Code Online (Sandbox Code Playgroud)

如果我想要第二列,我使用:

awk '/Data:/ {print $3}' file.txt
Run Code Online (Sandbox Code Playgroud)

但接下来,我在文件中有一些变量,比方说:

variable_1=1
variable_2=4
Run Code Online (Sandbox Code Playgroud)

我怎样才能只提取值?如何通过知道值来提取变量的名称?

hek*_*mgl 5

awk提供指定字段分隔符:

awk -F'=' '$1 == "variable_1" {print $2}' file
Run Code Online (Sandbox Code Playgroud)

印刷:

1
Run Code Online (Sandbox Code Playgroud)

  • @JoshuaSalazar你能给出输入数据和预期输出的具体示例吗? (2认同)
  • 当您想从 shell 脚本中提取变量时,请使用 shell。句号:) `源文件.sh; echo "${variable_1}"` 我不会在这里宣传不好的做法。 (2认同)