我知道如何阅读文件并获取所有文字,但我需要知道如何只获取我需要的值。
前: -
.properties文件有,
runId=A667B
我只需要获得A667B值。
答案 0 :(得分:1)
一种方式:
awk -F= '$1=="runId"{print $2}' file
答案 1 :(得分:1)
. .properties
此后,可以通过$runId
获得该值。
答案 2 :(得分:0)
这是一个纯shell方法:
IFS="=" read -r ignore var <file.properties
执行上述操作后,变量var
的值为A667B
。
以上工作通过从文件中读入变量来实现。通常,shell期望变量由空格分隔。但是,在这种情况下,我们告诉它变量将用等号分隔。我们通过将IFS
变量指定为=
的值来实现此目的。
-r
的{{1}}选项告诉它将输入文件中的任何反斜杠视为文字反斜杠,而不是具有特殊含义的字符。如果您想要特殊含义,例如read
是制表符,请删除该选项。
上面还将shell变量\t
设置为值ignore
。既然你说你不想要那个,那就忽略名为runId
的变量。
上面代码中的双引号实际上是不必要的。我把它们放在那里试图让代码更清晰。以下行可能看起来很奇怪,但它也可以正常工作:
ignore