Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2271796
  • 博文数量: 293
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2170
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-31 14:30
个人简介

自己慢慢积累。

文章分类

全部博文(293)

分类: LINUX

2015-12-29 17:48:32


将 1118.sql 这个文件中的 2015-11-18 替换为 2015-01-01 并输出到文件2015-01-01.sql中,文件1118.sql的内容保持不变
awk '{ gsub(/2015-11-18/,"2015-01-01"); print $0 >"2015-01-01.sql"}' 1118.sql

awk的效率比 sed 命令要快的多得多。

awk提供了许多强大的字符串函数,见下表:
awk内置字符串函数
gsub(r,s)    在整个$0中用s替代r
gsub(r,s,t)    在整个t中用s替代r
index(s,t)    返回s中字符串t的第一位置
length(s)    返回s长度
match(s,r)    测试s是否包含匹配r的字符串
split(s,a,fs)    在fs上将s分成序列a
sprint(fmt,exp)    返回经fmt格式化后的exp
sub(r,s)    用$0中最左边最长的子串代替s
substr(s,p)    返回字符串s中从p开始的后缀部分
substr(s,p,n)    返回字符串s中从p开始长度为n的后缀部分

阅读(6857) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~