+ -
当前位置:首页 → 问答吧 → 请教个基本问题,如何在awk中的system()函数使用含有换行符的字串变量?

请教个基本问题,如何在awk中的system()函数使用含有换行符的字串变量?

时间:2011-03-07

来源:互联网

在cgywin中

printf 'aaa\n%s\nbbb' $0 |tr -d '\n'  可以成功

输出
aaabashbbb

但在awk 用system()函数调用就不成功

下列$0含有回车换行符,内容如:



QUOTE:
项目        数值
驱动器        C:
描述        本地固定磁盘
压缩        否
文件系统        NTFS
大小        40.00 GB (42,952,376,320 字节)
空闲空间        4.21 GB (4,520,202,240 字节)
卷名称
卷序列号        0815D98B



newstr=system("printf 'aaa\n%s\nbbb' " $0 " | tr -d '\n'")
print newstr

可能是什么原因?

作者: rickcafe   发布时间: 2011-03-07

太愚昧了,发现用gsub就可以解决的


gsub(/\n/, "")

作者: rickcafe   发布时间: 2011-03-07