当前位置:  技术问答>linux和unix

关于sed 替换的问题 急急急(请各位老大帮忙看看,谢谢了!)

    来源: 互联网  发布时间:2017-01-05

    本文导语:  本帖最后由 Rookie_CEO 于 2011-10-08 22:31:52 编辑 通过sed -i 's/HH2011-10-08 00:00:00HH/1000211/g' sedfile1.dat 可以直接替换 [sms@zxx]$ cat  sedfile1.dat 1000211 HH2011-10-08 00:00:00HH HH2011-10-08 01:00:00HH 1000211 HH2011-10-08 00:00:00HH HH2011-10-08 ...

本帖最后由 Rookie_CEO 于 2011-10-08 22:31:52 编辑
通过sed -i 's/HH2011-10-08 00:00:00HH/1000211/g' sedfile1.dat 可以直接替换

[sms@zxx]$ cat  sedfile1.dat
1000211
HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

1000211
HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

[sms@zxx]$ sed -i 's/HH2011-10-08 00:00:00HH/1000211/g' sedfile1.dat
[sms@zxx]$ cat  sedfile1.dat
1000211
1000211
HH2011-10-08 01:00:00HH

1000211
1000211
HH2011-10-08 01:00:00HH

[sms@zxx]$




现在的问题是 有多个地方要替换,替换的地方是有规律的(HH YYYY-mm-dd HH24:mi:ss HH),所以写成变量的形式
sed -i 's/"$tt1"/"$tt2"/g' sedfile2.dat  ,但是在单引号里面的数据 shell都认为是值,不把它替换成变量对应的值
所以这句话执行了之后是没有任何效果的,达不到替换的目的,请各位老大帮忙看看,这种问题该怎么处理


tt1="HH2011-10-08 00:00:00HH"
tt2=1000211
sed -i 's/"$tt1"/"$tt2"/g' sedfile2.dat

[sms@zxx]$ tt2=1000211
[sms@zxx]$ tt1="HH2011-10-08 00:00:00HH"
[sms@zxx]$ echo $tt1
HH2011-10-08 00:00:00HH
[sms@zxx]$ tt2=1000211
[sms@zxx]$ 
[sms@zxx]$ sed -i 's/$tt1/$tt2/g' sedfile2.dat
[sms@zxx]$ cat sedfile2.dat 
HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

[sms@zxx]$ sed -i 's/"$tt1"/"$tt2"/g' sedfile2.dat
[sms@zxx]$ cat sedfile2.dat 
HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

HH2011-10-08 00:00:00HH
HH2011-10-08 01:00:00HH

[sms@zxx]$ 





|
算你厉害

sed -i "s/$tt1/$tt2/g" sedfile2.dat

|
方法1:对变量$var再加一对单引号,sed最外层是一对单引号
方法2:变量为${var},sed最外层是一对双引号


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 帮忙解析下这段日志,awk或者sed。
  • linux下利用(cat,strings,head,sed)命令生成随机字符串
  • 编程技术其它 iis7站长之家
  • 在循环中使用sed,为什么sed不被执行
  • 请问 ls *.IMG | sed s/.IMG// > cube.lis 中的 | sed s/.IMG// 参数是什么意思?
  • sed 的简单问题, sed初学, 脚本高手进。先谢了
  • sed变量的用法
  • 求住,sed命令
  • 关于sed脚本,高手快来解答
  • sed问题。。。对高手来说easy。。。
  • 求助:这个sed命令是什么意思?
  • sed linux 这句话什么 意思?
  • shell中的sed引入变量问题
  • 关于sed的正则表达式
  • sed -i 修改文件内容
  • 【sed】简单匹配
  • (急)shell,sed 关于参数的传递
  • | sed 's/^/\ /' > 是啥意思啊
  • 请教sed awk的用法详解,有命令说明的链接也不错,谢谢了
  • sed /awk 字段截取,Help!
  • 流编辑器 GNU sed
  • 请问哪里可以下载到sed这个工具啊?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3