1
我有一個包含多行字符串的變量。我需要閱讀前兩行,並根據它們的值進行一些處理。 我該怎麼做?從shell中的多行變量讀取
我的變量中的樣本值
Description: some value
Entity: Some value
Fixed
我需要得到前兩行(說明和實體)爲不同的變量。
我有一個包含多行字符串的變量。我需要閱讀前兩行,並根據它們的值進行一些處理。 我該怎麼做?從shell中的多行變量讀取
我的變量中的樣本值
Description: some value
Entity: Some value
Fixed
我需要得到前兩行(說明和實體)爲不同的變量。
隨着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=$(sed -n '1s/.*: //p' <<< "$var")
$ var3=$(sed -n '2s/.*: //p' <<< "$var")
$ echo $var2
some value
$ echo $var3
Some value
與grep
同一件事:
$ var2=$(grep Description <<< "$var")
$ var3=$(grep Entity <<< "$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
在例如:
$ 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
http://www.whathaveyoutried.com/ – ormaaj 2013-03-15 09:49:26