免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: bikkuri
打印 上一主题 下一主题

[文本处理] 文本插入求助 [复制链接]

论坛徽章:
50
15-16赛季CBA联赛之广夏
日期:2018-11-05 09:42:462015年亚冠纪念徽章
日期:2015-07-23 11:58:122015亚冠之广州富力
日期:2015-07-07 08:26:172015亚冠之塔什干棉农
日期:2015-06-29 09:08:072015年亚洲杯之伊朗
日期:2015-03-08 20:51:012015年迎新春徽章
日期:2015-03-04 09:58:11未羊
日期:2014-10-16 22:41:47处女座
日期:2014-10-16 15:33:33酉鸡
日期:2014-03-13 12:54:10巳蛇
日期:2014-03-10 14:39:052015亚冠之德黑兰石油
日期:2015-07-29 12:46:372015亚冠之德黑兰石油
日期:2015-08-07 12:54:11
11 [报告]
发表于 2014-01-03 13:16 |只看该作者
回复 6# bikkuri
  1. sed -i '1{p;s/.*/date/e;s/^/Generated on /}' file.txt
  2. sed -i '2{s/.*/date/e;s/^/Generated on /}' file.txt
复制代码

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
12 [报告]
发表于 2014-01-03 15:10 |只看该作者
我用的是Busybox的sed:
  1. root@jinx:~# sed --version
  2. This is not GNU sed version 4.0
  3. root@jinx:~#
复制代码
jason680 发表于 2014-01-03 13:15
回复 7# bikkuri

the sed version issue again?

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
13 [报告]
发表于 2014-01-03 15:13 |只看该作者
谢谢您的答复。但是在Busybox下没有效果。
  1. root@jinx:/tmp/test# sed -i '1{p;s/.*/date/e;s/^/Generated on /}' file.txt
  2. root@jinx:/tmp/test# cat file.txt
  3. line 1
  4. line 2
  5. line 3
  6. line 4
  7. root@jinx:/tmp/test# sed -i '2{s/.*/date/e;s/^/Generated on /}' file.txt
  8. root@jinx:/tmp/test# cat file.txt
  9. line 1
  10. line 2
  11. line 3
  12. line 4
  13. root@jinx:/tmp/test#
复制代码
WilliBhamlll 发表于 2014-01-03 13:16
回复 6# bikkuri

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
14 [报告]
发表于 2014-01-03 15:15 |只看该作者
谢谢赐教!
看来只有awk在busybox下能正常工作。

这个冬天不冷 发表于 2014-01-03 12:53
不可以,awk不可以直接写,用下mv吧回复 8# bikkuri
如果要加上Generated on可以这样改vim的就别用了

论坛徽章:
780
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
15 [报告]
发表于 2014-01-03 15:17 |只看该作者
又是BusyBox的环境问题吗?
楼主在这方面吃了不少苦头啊。

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
16 [报告]
发表于 2014-01-03 15:19 |只看该作者
唉,说的就是啊!
蜗牛壳里做道场的感觉!

Herowinter 发表于 2014-01-03 15:17
又是BusyBox的环境问题吗?
楼主在这方面吃了不少苦头啊。

论坛徽章:
780
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
17 [报告]
发表于 2014-01-03 15:22 |只看该作者
回复 16# bikkuri
没办法,环境问题是最折腾人的,
但是项目指定了要用,只能人想
各种办法去适应。


   

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
18 [报告]
发表于 2014-01-03 15:24 |只看该作者
回复 16# bikkuri
试一下用perl:
  1. [root@localhost ~]# perl -pe '$_.="Generated on ".`date` if $. == 1' i
  2. line 1
  3. Generated on 2014年 01月 03日 星期五 15:21:45 CST
  4. line 2
  5. line 3
  6. line 4
  7. [root@localhost ~]# perl -pe '$_="Generated on ".`date` if $. == 2' i
  8. line 1
  9. Generated on 2014年 01月 03日 星期五 15:21:53 CST
  10. line 3
  11. line 4
  12. [root@localhost ~]#
复制代码

论坛徽章:
18
辰龙
日期:2014-05-21 21:01:4115-16赛季CBA联赛之深圳
日期:2016-12-23 13:51:3815-16赛季CBA联赛之北控
日期:2016-11-28 18:26:3815-16赛季CBA联赛之佛山
日期:2016-11-03 11:18:5815-16赛季CBA联赛之辽宁
日期:2016-07-10 16:09:4115-16赛季CBA联赛之江苏
日期:2016-02-20 23:09:202015亚冠之塔什干棉农
日期:2015-08-17 19:49:492015年亚洲杯之日本
日期:2015-04-30 01:24:342015年亚洲杯之约旦
日期:2015-04-01 00:37:182015年亚洲杯之沙特阿拉伯
日期:2015-03-02 15:55:40处女座
日期:2014-05-25 10:34:0020周年集字徽章-年
日期:2023-04-23 11:17:52
19 [报告]
发表于 2014-01-03 15:55 |只看该作者
谢谢您的答复。但是我的busybox上没有perl,也不能安装perl。

yestreenstars 发表于 2014-01-03 15:24
回复 16# bikkuri
试一下用perl:

论坛徽章:
1
未羊
日期:2014-01-02 10:31:18
20 [报告]
发表于 2014-01-03 17:21 |只看该作者
本帖最后由 huzikan 于 2014-01-03 17:24 编辑

如果sed支持-i参数直接修改源文件的话还是用sed比较简单。。。我的AIX环境也是不支持sed -i选项的
插入操作:
  1. [hzk@247 /cdr1/home/hzk/huzikan/Shell]$ cat 1.txt
  2. line 1
  3. line 2
  4. line 3
  5. line 4
  6. [hzk@247]$ awk -vtime="`date`" 'NR==2{print "Generated on "time"\n"$0;next}1' 1.txt >1.tmp && mv -f 1.tmp 1.txt
  7. [hzk@247]$ cat 1.txt
  8. line 1
  9. Generated on Fri Jan  3 17:12:06 BEIST 2014
  10. line 2
  11. line 3
  12. line 4
复制代码
替换操作:
  1. [hzk@247]$ awk -vtime="`date`" 'NR==2{print "Generated on "time;next}1' 1.txt >1.tmp && mv -f 1.tmp 1.txt
  2. [hzk@247]$ cat 1.txt
  3. line 1
  4. Generated on Fri Jan  3 17:16:56 BEIST 2014
  5. line 3
  6. line 4
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP