echo "a[b]c"|awk -F'[\]\[]' '{ print $3 }'
得到
c
echo "a[b]c"|awk -F'[\[\]]' '{ print $3 }'
得到空?
经过一番研究发现
[][]处理成为匹配]或[
[[]]处理成为匹配[]
原因可能是字符组不允许为空:
[][]中第一个]真正作为]字符,而不是元字符,接着是字符[再遇到元字符]后字符组构造完毕,匹配]或[
[[]]同理第二个[也没有作为元字符
测试代码:
echo ']' | egrep '[]]'
echo '[' | egrep '[[]'
[root@localhost test]# echo '1111[3333]55555[7777]9999' |
awk
-F'[][]' '{print $1,$2,$3,$4,$5}'
1111 3333 55555 7777 9999
awk
命令
使用
1. 什么是
awk
AWK
, 数据过滤工具 (类似于grep,比grep强大),属数据处理引擎,基于模式匹配检查输入文本,逐行处理并输出。通常用在
Shell
脚本中,获取指定的数据,单独使用时,可对文本数据做统计
2.格式 语法
格式1:前置
命令
|
awk
[选项] 条件{编辑指令}’
格式2:
awk
[选项] 条件{编辑指令}’ 文件…
编辑指令如果包含多条语句时,可以用分号分隔,处理文本时,若未指定分隔符,则默认将空格、制表符等作为分隔符。print是最常见的指令
关于
awk
命令
的基础用法,请参考Linux
awk
命令
。
awk
-F
awk
-F #-F相当于内置变量FS, 指定
分割
字符,fs是一个
字符串
或者是一个正则表达式,如-F:。
awk
命令
之,
分割
符
awk
命令
之;
分割
符
awk
是一个强大的文本分析工具,相对于grep的查找,sed的编辑,
awk
在其对数据分析并生成报告时,显得尤为强大。使用方法:
awk
'{pattern+action}' {filenames}三种方式调用
awk
:1,
awk
[-F field-separator] 'commands' input-file(s)
2,
shell
脚步方式
3,将所有的
awk
命令
插入一个单独文件,然后调用
awk
...
awk
操作(action)是花括号中以分号分隔的语句。如果操作前面有个模式,则该模式控制执行操作的时间。操作可以是简单的语句或复杂的语句。同一行内的多条语句由分号分隔,独占一行的语句则以换行符分隔。
{action}
{print $1,$2}
说明:该操作用来打印前两个字段。
模式可以与操作结合使用。记住,操作是括在花括号中的语句,模式
1 前言
awk
是Unix环境下一种非常好的语言,适合于文本处理和报表生成,它还有许多精心设计的特性,允许进行特殊技巧程序设计。对于短消息来说,比如处理话单文件,使用
awk
就非常方便,鉴于测试组大部分人对
awk
并不熟悉,因此仅以本文作一个提纲挈领的介绍,希望对初学者迅速掌握
awk
有所帮助。
2 第一部分:入门 2.1 第一个
awk
程序
所有的编程书籍
表示任取
中括号
里面的一个字符,因此里面的每一个字符都会被当作分隔符
Administrator@XTZJ-20211002VW MINGW64 ~
$ echo $s1 |
awk
-F "[<>]" '{print $2}'
hello world
......
在对
字符串
处理时,更喜欢用format来进行相应的处理,但是如果我们的
字符串
是下面这样一个
字符串
exec_command呢?
hana_adm = 'hxe_adm'
full_backup_file = '/tmp/flashbackup_tmp/117/systemdb/full_databackup_0_1'
exec_command = "su - {} -c \"hdbbackupche...
与sed
命令
一样,均是一行一行的读取、处理 sed作用于一整行的处理,而
awk
将一行分成数个字段来处理
awk
默认的分隔符是空白(空格、tab键)
-====================================
awk
的数据字段变量
$0 表示整行文本
$1 表示文本中第一个数据字段
$2 表示文本中第二个数据字段
$n 表示文本中第n个数据字段
如/etc
一、
awk
命令
简介
(一)
awk
命令
格式
awk
也是对文本内容进行处理,但是
awk
采用了类似于“编程”的方式,使得用户在使用时可以进行更加复杂和强大的操作。
awk
的
命令
中包括了模式和
命令
,
awk
命令
在执行时,会首先扫描文本,查找匹配模式的行,并进行
命令
中规定的操作。相比于grep,
awk
可以自定义间隔符,将一行分成数个段,并以段为单位进行操作,因此,
awk
命令
常被用于提取一些复杂输出中的关键信息。
awk
命令
格式如下:
awk
是Unix环境下一种非常好的语言,适合于文本处理和报表生成,它还有许多精心设计的特性,允许进行特殊技巧程序设计。对于短消息来说,比如处理话单文件,使用
awk
就非常方便,鉴于测试组大部分人对
awk
并不熟悉,因此仅以本文作一个提纲挈领的介绍,希望对初学者迅速掌握
awk
有所帮助。
2、第一部分:入门
2.1 第一个
awk
程序
所有的编程书籍都是通过一个“He...