设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 综合讨论区 —— LinuxSir.cn
›
shell进阶应用、shell编程
›
请教一个小程序
返回列表
查看:
1126
|
回复:
9
请教一个小程序
[复制链接]
liuxq6666
liuxq6666
当前离线
积分
2
IP卡
狗仔卡
发表于 2006-8-22 19:13:13
|
显示全部楼层
|
阅读模式
有一个文件:test.txt,内容如下:
Name:liuxq, update 2006-8-20
Grade:80, update 2006-8-20
Name:kongyy, update 2006-8-20
Grade:86, update 2006-8-20
..................
现在需要根据此文件得到一个新文件 new.txt,格式如下:
liuxq 80
kongyy 86
..................
麻烦各位了,先谢啦!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
yongjian
yongjian
当前离线
积分
2576
IP卡
狗仔卡
发表于 2006-8-22 23:00:06
|
显示全部楼层
You can take a look the s,N commands of sed.
回复
支持
反对
使用道具
举报
显身卡
liuxq6666
liuxq6666
当前离线
积分
2
IP卡
狗仔卡
楼主
|
发表于 2006-8-24 23:31:32
|
显示全部楼层
看了,但是不会用,你可否给写个大概。
回复
支持
反对
使用道具
举报
显身卡
RAULNAN
RAULNAN
当前离线
积分
159
IP卡
狗仔卡
发表于 2006-8-25 09:40:21
|
显示全部楼层
这个不用循环能完成吗?请给个最简单的方法。
回复
支持
反对
使用道具
举报
显身卡
davi
davi
当前离线
积分
142
IP卡
狗仔卡
发表于 2006-8-25 10:22:12
|
显示全部楼层
方法比较苯,感兴趣你再优化
$ awk -F":" '{ print $2 }' filename |awk -F"," '{ print $1 }'|sed '/^$/d'|sed '$!N;s/\n/ /'
回复
支持
反对
使用道具
举报
显身卡
RAULNAN
RAULNAN
当前离线
积分
159
IP卡
狗仔卡
发表于 2006-8-25 14:28:33
|
显示全部楼层
能说说
sed '$!N;s/\n/ /'
的 $!N 是什么意思吗? 看不懂啊
回复
支持
反对
使用道具
举报
显身卡
wcpeter
wcpeter
当前离线
积分
4
IP卡
狗仔卡
发表于 2006-8-25 21:58:42
|
显示全部楼层
个人理解
sed '$!N;s/\n//'
$! 是条件 即不是最后一行
N为操作 即把下一行内容读入 pattern space
然后 替换 \n 为 空
这步仿佛是要把 多行并一行
回复
支持
反对
使用道具
举报
显身卡
RAULNAN
RAULNAN
当前离线
积分
159
IP卡
狗仔卡
发表于 2006-8-28 11:40:30
|
显示全部楼层
感谢各位!我也明白了。谢谢。
回复
支持
反对
使用道具
举报
显身卡
dbcat
dbcat
当前离线
积分
4
IP卡
狗仔卡
发表于 2006-8-28 13:05:54
|
显示全部楼层
sed '/Name/{:a;N;/Grade/ta;s/Name:\([^,]*\).*\nGrade:\([^,]*\).*/\1 \2/g}'
回复
支持
反对
使用道具
举报
显身卡
Skymoon
Skymoon
当前离线
积分
55
IP卡
狗仔卡
发表于 2006-8-28 23:26:30
|
显示全部楼层
提供两种认为还可以的方法
awk -F"[:,]" '/Name/{ORS=" ";print $2};/Grade/{ORS="\n";print $2}' filename
awk -F"[:,]" -v RS="Name" '{print $2" "$4}' filename
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
Archlinux讨论区
LinuxSir 论坛管理
Redhat/Fedora/CentOS Linux
硬件设备 Linux 驱动
服务器架设、应用、维护
Debian Linux
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表