如何使用sed
提取variable=value
& awk
?在bash中使用sed&awk找到variable = value的方法
例如考慮以下字符串,
嗨人們你好嗎。我想從這個字符串中提取
birthdate=July0808128
。
如何使用sed
提取variable=value
& awk
?在bash中使用sed&awk找到variable = value的方法
例如考慮以下字符串,
嗨人們你好嗎。我想從這個字符串中提取
birthdate=July0808128
。
你可以使用awk
在=
variable=$(awk -F'=' '{print $1}')
value=$(awk -F'=' '{print $2}')
echo $variable $value
分裂有可能是一個辦法做到這一點的一個鏡頭,但我現在懶得man awk
。
我們可以在一個班輪內做到這一點,找到一個詞&提取詞=值? – Rock
$ s="birthdate=July0808128"
$ echo "${s%=*}"
birthdate
$ echo "${s#*=}"
July0808128
- 編輯 -
我有文件,其中多條線路。其中3行是喜歡,>嗨搖滾 你好嗎。我想從這個字符串中提取birthdate = July0808128。 >你好阿克夏你好嗎。我想從這個字符串中提取birthdate = July0808128。我想提取出生日期= July0808128出的上述 串
grep -Po 'birthdate=\w+' yourfile
OR
grep -Po 'birthdate=\w+[0-9]{7}' yourfile
應該工作。
你想提取「出生日期」和「July0808128」?....你有什麼試過? – Matt
我用了很長的令人毛骨悚然的grep -wd表達 – Rock
'ksh'或'bash'?他們是兩個不同的炮彈(實際上,有很多不同的,互不相容的炮彈是以ksh的名義發行的;我在陣營中,如果它不是由David Korn寫的,它是不是真正的ksh,克隆,像pdksh或mksh,通常缺少特徵)。如果是bash,你有'[[$ string =〜$ regex]]',所以你不需要'sed' *或*'awk'。 –