Bash 从shell中的多行变量读取
我有一个包含多行字符串的变量。我需要读取前两行,并根据它们的值进行一些处理。 我该怎么做 变量中的示例值为Bash 从shell中的多行变量读取,bash,shell,unix,Bash,Shell,Unix,我有一个包含多行字符串的变量。我需要读取前两行,并根据它们的值进行一些处理。 我该怎么做 变量中的示例值为 Description: some value Entity: Some value Fixed 我需要将前两行(Description和Entity)作为不同的变量 关于示例: $ echo "$MYVAR" Description: some value Entity: Some value Fixed $ VAR1=$(echo "$MYVAR" | sed -n 1p)
Description: some value
Entity: Some value
Fixed
我需要将前两行(Description和Entity)作为不同的变量 关于示例:
$ echo "$MYVAR"
Description: some value
Entity: Some value
Fixed
$ VAR1=$(echo "$MYVAR" | sed -n 1p)
$ VAR2=$(echo "$MYVAR" | sed -n 2p)
VAR1
和VAR2
现在分别包含MYVAR
的第一行和第二行:
$ echo $VAR1
Description: some value
$ echo $VAR2
Entity: Some value
例如:
$ echo "$MYVAR"
Description: some value
Entity: Some value
Fixed
$ VAR1=$(echo "$MYVAR" | sed -n 1p)
$ VAR2=$(echo "$MYVAR" | sed -n 2p)
VAR1
和VAR2
现在分别包含MYVAR
的第一行和第二行:
$ echo $VAR1
Description: some value
$ echo $VAR2
Entity: Some value
使用sed
:
$ echo "$var"
Description: some value
Entity: Some value
Fixed
$ var2=$(sed -n 1p <<< "$var")
$ var3=$(sed -n 2p <<< "$var")
$ echo $var2
Description: some value
$ echo $var3
Entity: Some value
仅限值:
$ var2=$(grep -Po "Description: \K.*" <<< "$var")
$ var3=$(grep -Po "Entity: \K.*" <<< "$var")
$ echo $var2
some value
$ echo $var3
Some value
$var2=$(grep-Po“Description:\K.*”带有sed
:
$ echo "$var"
Description: some value
Entity: Some value
Fixed
$ var2=$(sed -n 1p <<< "$var")
$ var3=$(sed -n 2p <<< "$var")
$ echo $var2
Description: some value
$ echo $var3
Entity: Some value
仅限值:
$ var2=$(grep -Po "Description: \K.*" <<< "$var")
$ var3=$(grep -Po "Entity: \K.*" <<< "$var")
$ echo $var2
some value
$ echo $var3
Some value
$var2=$(grep-Po“说明:\K.*”