免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2822 | 回复: 10
打印 上一主题 下一主题

如何添加几列 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-12-20 00:58 |只看该作者 |倒序浏览
我一个文件,格式如下
13501506236|-YABJ|2004-12-08 12:06:43|
13501506237|-YLC|2004-12-08 16:09:13|
13501506238|-YDBJ|2004-12-08 18:06:40|
我想在第2列前面和后面都增加一列为AA,AB的字段。希望变为
13501506236|AA|-YABJ|AB|2004-12-08 12:06:43|
13501506237|AA|-YLC|AB|2004-12-08 16:09:13|
13501506238|AA|-YDBJ|AB|2004-12-08 18:06:40|

我这样试了


awk '{print $1,"AA",$2,"AB",$3}' file >newfile
但结果变为了
13501506236 AA -YABJ AB 2004-12-08 12:06:43
13501506237 AA -YLC AB 2004-12-08 16:09:13
13501506238 AA -YDBJ AB 2004-12-08 18:06:40
可我不想得到这样的结果啊。
我想还保留“|”的符号。
谢谢了。。

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-12-20 01:22 |只看该作者

如何添加几列


  1. awk 'BEGIN{FS=OFS="|"}{print $1,"AA",$2,"AB",$3,$4}' file
复制代码

论坛徽章:
0
3 [报告]
发表于 2004-12-20 10:13 |只看该作者

如何添加几列

我的很罗索,试一下:

cat filename  | awk -F"|" '{print $1"|AA|"$2"|AB|"$3"|"}'

已在solaris8上面测试过。
因为烈火兄的版本在我的solaris5.8上不好使。

论坛徽章:
0
4 [报告]
发表于 2004-12-20 11:17 |只看该作者

如何添加几列

恩。谢谢大家了

论坛徽章:
0
5 [报告]
发表于 2004-12-20 13:52 |只看该作者

如何添加几列

cat file ????
可用:
awk -F"|" '{print $1"|AA|"$2"|BB|"$3"|"}' file
awk -F"|" '{printf"%s|AA|%s|BB|%s", $1,$2,$3}' file

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2004-12-20 14:36 |只看该作者

如何添加几列

原帖由 "zy962003" 发表:
cat file ????
可用:
awk -F"|" '{print $1"|AA|"$2"|BB|"$3"|"}' file
awk -F"|" '{printf"%s|AA|%s|BB|%s", $1,$2,$3}' file

第2条语句有问题!

论坛徽章:
0
7 [报告]
发表于 2004-12-20 14:38 |只看该作者

如何添加几列

  1. sed 's/\(|-[^|]*|\)/|AA\1AB|/'   filename
  2. 13501506236|AA|-YABJ|AB|2004-12-08 12:06:43|
  3. 13501506237|AA|-YLC|AB|2004-12-08 16:09:13|
  4. 13501506238|AA|-YDBJ|AB|2004-12-08 18:06:40|
复制代码

论坛徽章:
0
8 [报告]
发表于 2004-12-20 18:03 |只看该作者

如何添加几列

Solaris5.8上我试了没有问题。

论坛徽章:
0
9 [报告]
发表于 2004-12-20 18:04 |只看该作者

如何添加几列

我是指
awk 'BEGIN{FS=OFS="|"}{print $1,"AA",$2,"AB",$3,$4}' file

这句没有问题。

论坛徽章:
0
10 [报告]
发表于 2004-12-23 15:53 |只看该作者

如何添加几列

[quote]原帖由 "哈"][/quote 发表:

  1. sed 's/\(|-[^|]*|\)/|AA\1AB|/'   filename
  2. 13501506236|AA|-YABJ|AB|2004-12-08 12:06:43|
  3. 13501506237|AA|-YLC|AB|2004-12-08 16:09:13|
  4. 13501506238|AA|-YDBJ|AB|2004-12-08 18:06:40|
复制代码

要注意发贴人的要求。你这个虽然也解决了本问题但是和引用的条件不是根本条件。
“我想在第2列前面和后面都增加一列为AA,AB的字段”
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP