我的意见如下: -
测试=变量
测试ID = 2122
1你好,直到你活跃
2此代码功能3
我需要如下输出: -
可变
2122
,直到
答案 0 :(得分:1)
如果目标是打印等号后出现的内容:
$ awk -F= '$2 {print $2}' file
variable
2122
-F=
告诉awk使用=
作为字段分隔符。因此,在第一行=
之前的内容是第一个字段$1
。
$2 {print $2
告诉awk如果第二个字段不为空,则打印第二个字段。
答案 1 :(得分:1)
awk '/=/ {gsub(/^.*=/,""); print; next} !/=/ {print $3}' file
variable
2122
till
code
说明:
awk '
/=/ { # if equals sign in the record
gsub(/^.*=/,"") # remove everything from the beginning to the =
print # print it
next}
{print $3} # print the third field
' file
根据@karakfa和@ John1024的建议编辑。