免费注册 查看新帖 |

Chinaunix

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

求助,关于awk中进行时间替换问题。 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-11-22 19:32 |只看该作者
原帖由 langzi0731 于 2006-11-22 19:21 发表


如果没有单引号就会出错,我也搞不懂,为何会这样?哪位能用语法来解释一下这个问题?
没有单引号,结果就成了:t10000001_$datetime
而没有能匹配上原来赋值给datetime变量的值,把变量做文本字符串处理了 ...



你原来的datetime="'`date +%Y%m%d`'"

我说你多了单引号, 不是反引号

datetime="`date +%Y%m%d`"

awk 传值进去, 你引号弄不清, 会弄很久的

awk '脚本' awk内变量=$datetime 打开文件列表
这样调用

[ 本帖最后由 Edengundam 于 2006-11-22 19:37 编辑 ]

论坛徽章:
0
12 [报告]
发表于 2006-11-22 20:09 |只看该作者
啊,是我看错了,果然忘记删除那个单引号了。非常感谢!!!!!!!!!!!!!!!!!!
不过我的那个sed指令为何会错?请指教

论坛徽章:
0
13 [报告]
发表于 2006-11-22 20:44 |只看该作者
引号保护的问题, 你可以查资料..自己实践

论坛徽章:
0
14 [报告]
发表于 2006-11-23 10:35 |只看该作者
try
  1. awk '{ sub(/$/, "'$(date +%Y%m%d)'", $5); print; }' urfile
复制代码

论坛徽章:
0
15 [报告]
发表于 2006-11-23 10:39 |只看该作者
单引号里面,'\' 不能转义

论坛徽章:
0
16 [报告]
发表于 2006-11-23 10:47 |只看该作者
原帖由 awk就是awp加ak 于 2006-11-23 10:35 发表
try
  1. awk '{ sub(/$/, "'$(date +%Y%m%d)'", $5); print; }' urfile
复制代码

呵呵,这招行啊!

就是不明白/$/这个字窜的意思。

还有请问如果要替换文本中的单引号,sed如何进行转义?

论坛徽章:
0
17 [报告]
发表于 2006-11-23 10:59 |只看该作者
结束符,
tr -d "'"
sed "s,',,"
...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP