免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2156 | 回复: 5

[文本处理] 替换指定位置的内容 [复制链接]

论坛徽章:
0
发表于 2015-05-05 08:09 |显示全部楼层
文本内容
update lol
set ip=replace(adc,'127.0.0.1','192.168.0.1');

update dota
set ip=replace(apc,'127.0.0.1','192.168.0.1');


文本里127.0.0.1和192.168.0.1全部都要修改.

sed语句或者脚本能够实现参数一替换掉127.0.0.1,参数二能够替换掉192.168.0.1.


非常感谢

求职 : 机器学习
论坛徽章:
79
2015年亚洲杯纪念徽章
日期:2015-05-06 19:18:572015七夕节徽章
日期:2015-08-21 11:06:172015亚冠之阿尔纳斯尔
日期:2015-09-07 09:30:232015亚冠之萨济拖拉机
日期:2015-10-21 08:26:3915-16赛季CBA联赛之浙江
日期:2015-12-30 09:59:1815-16赛季CBA联赛之浙江
日期:2016-01-10 12:35:21技术图书徽章
日期:2016-01-15 11:07:2015-16赛季CBA联赛之新疆
日期:2016-02-24 13:46:0215-16赛季CBA联赛之吉林
日期:2016-06-26 01:07:172015-2016NBA季后赛纪念章
日期:2016-06-28 17:44:45黑曼巴
日期:2016-06-28 17:44:4515-16赛季CBA联赛之浙江
日期:2017-07-18 13:41:54
发表于 2015-05-05 08:41 |显示全部楼层
本帖最后由 zsszss0000 于 2015-05-05 08:42 编辑
  1. aa=aaaa
  2. bb=bbbb
  3. sed 's/127\.0\.0\.1/'$(echo $aa)'/;s/192\.168\.0\.1/'$(echo $bb)'/' file
复制代码
  1. update lol
  2. set ip=replace(adc,'aaaa','bbbb');

  3. update dota
  4. set ip=replace(apc,'aaaa','bbbb');
复制代码

论坛徽章:
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
发表于 2015-05-05 08:46 |显示全部楼层
  1. [enb@hp8:~]$ cat file
  2. update lol
  3. set ip=replace(adc,'127.0.0.1','192.168.0.1');

  4. update dota
  5. set ip=replace(apc,'127.0.0.1','192.168.0.1');
  6. [enb@hp8:~]$ awk -vip1=1.1.1.1 -vip2=2.2.2.2 '{gsub(/127.0.0.1/,ip1,$0);gsub(/192.168.0.1/,ip2,$0)}1' file
  7. update lol
  8. set ip=replace(adc,'1.1.1.1','2.2.2.2');

  9. update dota
  10. set ip=replace(apc,'1.1.1.1','2.2.2.2');
复制代码
回复 1# 路人呵呵


   

论坛徽章:
1
2015亚冠之鹿岛鹿角
日期:2015-05-12 13:04:44
发表于 2015-05-05 08:51 |显示全部楼层
  1. # cat files
  2. update lol
  3. set ip=replace(adc,'127.0.0.1','192.168.0.1');

  4. update dota
  5. set ip=replace(apc,'127.0.0.1','192.168.0.1');
复制代码
  1. awk --re-interval '{a=gensub(/([0-9]{1,3}\.){3}[0-9]{1,3}/,"192.168.10.1","1",$0);b=gensub(/([0-9]{1,3}\.){3}[0-9]{1,3}/,"192.168.10.2","2",a);print b}' files
复制代码
  1. update lol
  2. set ip=replace(adc,'192.168.10.1','192.168.10.2');

  3. update dota
  4. set ip=replace(apc,'192.168.10.1','192.168.10.2');
复制代码

论坛徽章:
20
卯兔
日期:2015-01-26 22:05:142015亚冠之萨济拖拉机
日期:2015-09-10 15:15:282015亚冠之阿尔希拉尔
日期:2015-09-25 17:37:53程序设计版块每日发帖之星
日期:2015-10-03 06:20:00程序设计版块每日发帖之星
日期:2015-12-09 06:20:00CU十四周年纪念徽章
日期:2015-12-17 09:07:15程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:342015亚冠之广州富力
日期:2015-08-27 19:29:56每日论坛发贴之星
日期:2015-08-26 06:20:002015亚冠之阿尔希拉尔
日期:2015-05-18 17:26:27
发表于 2015-05-05 08:56 |显示全部楼层
本帖最后由 songyc_2015 于 2015-05-05 08:57 编辑

回复 1# 路人呵呵
  1. a="1111"
  2. b="2222"
  3. sed -r "s#'[^']+'#'${a}'#1;s#'[^']+'#'${b}'#2;" file
复制代码
试试看

论坛徽章:
36
摩羯座
日期:2013-09-23 16:37:312015年亚洲杯之沙特阿拉伯
日期:2015-04-14 09:10:172015亚冠之柏太阳神
日期:2015-06-25 08:48:212015亚冠之武里南联
日期:2015-07-28 09:01:082015亚冠之莱赫维亚
日期:2015-07-28 15:44:172015亚冠之柏斯波利斯
日期:2015-09-06 14:08:52白银圣斗士
日期:2015-11-25 17:06:2815-16赛季CBA联赛之吉林
日期:2015-12-09 16:59:072016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之辽宁
日期:2016-04-14 09:29:04luobin
日期:2016-06-17 17:46:3615-16赛季CBA联赛之天津
日期:2016-08-16 14:11:01
发表于 2015-05-05 14:38 |显示全部楼层
  1. sed -r "s/([^']*').*(',').*('.*)/\1xxxx\2xxxx\3/"
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP