使用sed在模式之间打印字符串

时间:2017-09-18 19:40:20

标签: sed

我必须使用sed。

提取以下函数调用的第一个参数
strlcpy(p->name,getInfo(NULL,&account)); 
strlcpy(p->balance,getInfo(NULL,&account));
strlcpy(p->number,getInfo(NULL,&account)); 
strlcpy(p->address,getInfo(NULL,&account));

期望字符串的结果如下。

p->name
p->balance
p->number
p->address

以下命令打印其他详细信息,我只期望第一个参数。

 sed -n 's/strlcpy(\(.*\),/\1/p' kk.txt

p->name,getInfo(NULL&account));
p->balance,getInfo(NULL&account));
p->number,getInfo(NULL&account));
p->address,getInfo(NULL&account));

1 个答案:

答案 0 :(得分:3)

 sed -n 's/.*strlcpy(\([^,]*\).*/\1/p' kk.txt