awk 'ORS=NR%2?",":"\n"' 这句AWK如何解释 真心求教
1个回答
展开全部
这个是奇数行末尾输出逗号,偶数行换行(输出"\n"),形成两两一组,如下:
奇数行,偶数行
奇数行,偶数行
……
这句话是通过改变 输出的 记录分隔符ORS 来实现的,ORS默认是换行符"\n"
NR是当前的行号,用NR%2取余来判断是否为奇数行 如果是则将ORS赋值为"," ,否则赋值为"\n",用的是一个三元操作 A?B:C 满足A则B否则C 也可以写成
awk 'if(NR%2){ORS=","}else{ORS="\n"}'
这样就使得奇数行的记录分隔符ORS是逗号,偶数行是换行,从而实现了想要的功能
奇数行,偶数行
奇数行,偶数行
……
这句话是通过改变 输出的 记录分隔符ORS 来实现的,ORS默认是换行符"\n"
NR是当前的行号,用NR%2取余来判断是否为奇数行 如果是则将ORS赋值为"," ,否则赋值为"\n",用的是一个三元操作 A?B:C 满足A则B否则C 也可以写成
awk 'if(NR%2){ORS=","}else{ORS="\n"}'
这样就使得奇数行的记录分隔符ORS是逗号,偶数行是换行,从而实现了想要的功能
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询