awk -f 特殊字符分割问题

问题描述

awk -f 特殊字符分割问题

我在用awk进行字符分割的时候,遇到特殊分隔符问题:
case:
20150426 &$test&$保税区&保盈南$路19号广上科技
需求:
需要以"&$"作为分割符号。
实现:
我写了如下正则,awk -F "[&][$]" '{print $2}' awk_test.txt
各位帮忙看看是否合理,谢谢

还有没有更加高效的处理办法,这里用到正则了,由于我的数据量在千万级别,我感觉效率会有影响。

解决方案

正则表达式是最好方法了。

时间: 2024-09-29 13:14:33

awk -f 特殊字符分割问题的相关文章

awk处理特殊字符(原创)

单引号 ( ' ' ) 如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldberg phonebook命令,grep会把Goldberg和phonebook当作需要搜索的文件 $ grep 'Susan Gold' phonebookSusan Goldberg 403-212-4921 当shell碰到第一个单引号时,它忽略掉其后直到右引号的所有特殊字符 如果想打印单引号,可以采用如下方式   $ awk 'BEGIN{print "'\''"

lua根据特殊字符分割字符串;使用Redis进行hmget

最近的谈谈项目使用了部分lua,用于一些请求量超高的请求,在nginx层面挡回去,省的调用大量php进程. 由于以前没用过lua,开发过程中遇到了一些小技能点,记录一下. 1.lua字符串分割函数  代码如下 复制代码 Example --字符串分割函数,按|分割 function lua_string_split(str, split_char)     local sub_str_tab = {};     for mu_id in string.gmatch(str, "(%d+)|*&q

工作中常用的Linux命令

1.从其他机器拷贝文件夹 格式: scp -r 文件夹名 用户名@机器名:/路径 范例: scp -rsearch work@zjm-testing-ps23.zjm.baidu.com:/home/work/ 2.查看哪个程序在用特定端口 格式: netstat-nap | grep 端口号 范例: netstat -nap| grep 8080 3.实时监控日志文件内容 格式: tail -f 日志文件名 范例: tail -fui.log 说明:这显示ui.log文件的最后十行.tail

awk,cut分割字符效率测试

通过#或者@来分割字符串,可以通过awk或者cut来实现,awk可以通过正则,或者split来实现. 都能实现目标,那么他们的效率怎么样呢?我们来测试一下 [root@nagios fx]# time awk -F[#@] '{print $4}' www>/dev/null real    1m9.570s user    1m9.202s sys     0m0.340s [root@nagios fx]# time awk -F# '{split($3,A,"@");{pr

awk命令详解

来源:http://caoyanbao.iteye.com/blog/570868 来源:http://blog.sina.com.cn/s/blog_6ceed3280101dsir.html 什么是awk?  你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk还远没达到它应有的知名度.awk是什么?与其它大多数UNIX命令不同的是,从名字上看,我们不可能知道awk的功能:它既不是具有独立意义的英文单词,也不是几个相关单词的缩写.事实上,awk是

shell脚本学习指南[四](Arnold Robbins & Nelson H.F. Beebe著)_linux shell

回忆起一件事情:之前用linux寻找中文输入法的时候,在百度输入了fcitx,然后结果上边有个,您要找的是不是: 讽刺腾讯 .本来一直记不住这个输入法名字,不过以后哥就记住这个输入法的名字是怎么拼了,感谢百度. 第九章awk的惊人表现 awk的调用可以定义变量.提供程序并且指定输入文件,语法: 复制代码 代码如下: awk [ -F fs ] [ -v var=value ... ] 'program' [ -- ] [ var=value ... ] [file(s) ]awk [ -F fs

awk 详解+实例

1. awk简介 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入.一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具.它在命令行中使用,但更多是作为脚本来使用.awk的处理文本和数据的方式是这样的,它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作.如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指

linux-shell脚本命令:awk命令简介

[ awk简介: ] awk可以从一个文本中获取部分内容, 或者对这个文本进行排版, 使它按某种格式输出. [ awk工作流程: ] awk会把文件一行内容去到内存里, 然后对这行内容进行分段 ( 默认按空格或tab分割, $1, $2, $3... ). 再删了, 然后读取第二行内容到内存... 格式: awk '{/pattern/ command1; command2; ...}' file        # 匹配模式的这一行执行命令 例如: who | awk '{print $1}'

Unix下如何使用awk

1.什么是awk 你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk还远没达到它应有的知名度.awk是什么?与其它大多数UNIX 命令不同的是,从名字上看,我们不可能知道awk的功能:它既不是具有独立意义的英文单词,也不是几个相关单词的缩写.事实上,awk是三个人名的缩写,他们 是:Aho.(Peter)Weinberg和(Brain)Kernighan.正是这三个人创造了awk---一个优秀的样式扫描与处理工具. AWK的功能是什么?与sed和g