QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1116|回复: 7

shell编程难题求解

[复制链接]
发表于 2006-2-9 13:31:06 | 显示全部楼层 |阅读模式
是我工作中遇到的一个问题,大体意思是我有一个文本文件,当某行纪录以某字符串(例如“abcde”)开头的行,我就将这行文字删除,并在这行所在位置插入另外的内容,请各位想想用什么办法解决?用AWK或SED能做吗?
发表于 2006-2-9 14:07:56 | 显示全部楼层
可以的
用sed就可以了,就是 搜索以“adcde”开头的行,然后把这行替换就可以了,试试这个:
[code:1]
$cat file.txt|sed '/^abcde/s/.*/插入你要的内容/g'
[/code:1]
回复

使用道具 举报

 楼主| 发表于 2006-2-9 14:53:55 | 显示全部楼层
感谢感谢
回复

使用道具 举报

 楼主| 发表于 2006-2-9 14:58:03 | 显示全部楼层
那我要是想将更改后的输出到一个文件怎么做呢?
回复

使用道具 举报

 楼主| 发表于 2006-2-9 15:03:04 | 显示全部楼层
输出的问题已经解决了,谢谢!
回复

使用道具 举报

发表于 2006-2-9 15:03:44 | 显示全部楼层
后面重定向就可以了
[code:1]
$cat file.txt|sed '/^abcde/s/.*/插入你要的内容/g' > filenew.txt[/code:1]
回复

使用道具 举报

 楼主| 发表于 2006-2-9 15:15:18 | 显示全部楼层
还有问题。。。我要在‘要插入的内容’处进行一些判断,要使用IF 。。ELSE,WHILE等语句,怎么才能在/。。。。/之间使用这些语句呢?望指教
回复

使用道具 举报

发表于 2006-2-12 18:00:42 | 显示全部楼层
awk可以
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-9-28 02:11 , Processed in 0.062371 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表