shell编程系列20--文本处理三剑客之awk常用选项 awk选项总结 选项 解释 -v 参数传递 -f 指定脚本文件 -F 指定分隔符 -V 查看awk的版本号 [root@localhost shell]# awk -v num2="$num1" -v var1="$var" 'BEGIN{print num2,var1}' hello world # -f 选项 文件中读取表达式 [root@localhost shell]# .awk BEGIN{ str…
shell编程系列18--文本处理三剑客之awk动作中的条件及if/while/do while/for循环语句条件语句 if(条件表达式) 动作1 else if(条件表达式) 动作2 else 动作3 循环语句: while循环: while(条件表达式) 动作 do while循环: do 动作 while(条件表达式) for循环: for(初始化计数器;计数器测试;计数器变更) 动作 .以:为分隔符,只打印/etc/passwd中第3个字段的数值在50-100范围内的行信息 # 简单运…
shell编程系列17--文本处理三剑客之awk动作中的表达式用法 awk动作表达式中的算数运算符 awk动作中的表达式用法总结: 运算符 含义 + 加 - 减 * 乘 / 除 % 模 ^或** 乘方 ++x 在返回x变量之前,x变量加1 x++ 在返回x变量之后,x变量加1 --x 在返回x变量之前,x变量减1 x-- 在返回x变量之后,x变量减1 .使用awk计算/etc/services中的空白行数量 awk 'BEGIN{sum=0}/^$/{++sum}END{print sum}'…
shell编程系列14--文本处理三剑客之awk的概述及常用方法总结 awk是一个文本处理工具,通常用于处理数据并生成结果报告 awk的命名是它的创始人 Alfred Aho.Peter Weinberger和Brian Kernighan 姓氏的首个字母组成的 awk的工作模式 语法格式 第一种形式: awk 'BEGIN{}pattern{commands}END{}' file_name BEGIN在匹配之前就执行的操作,pattern{commands}是对每一行的操作,END是匹配完后…
shell编程系列21--文本处理三剑客之awk中数组的用法及模拟生产环境数据统计 shell中的数组的用法: shell数组中的下标是从0开始的 array=("Allen" "Mike" "Messi" "Jerry" "Hanmeimei" "Wang") 打印元素: ]} 打印元素个数: echo ${#array[@]} 打印某个元素长度: ]} 给元素赋值: array[]=…
shell编程系列19--文本处理三剑客之awk中的字符串函数 字符串函数对照表(上) 函数名 解释 函数返回值 length(str) 计算字符串长度 整数长度值 index(str1,str2) 在str1中查找str2的位置 返回值为位置索引,从1开始计数 tolower(str) 转换为小写 转换后的小写字符串 toupper(str) 转换为大写 转换后的大写字符串 substr(str,m,n) 从str的m个字符开始,截取n位 截取后的子串 split(str,arr,fs) 按f…
shell编程系列16--文本处理三剑客之awk模式匹配的两种方法 awk的工作模式 第一种模式匹配:RegExp 第二种模式匹配:关系运算匹配 用法格式对照表 语法格式 含义 RegExp 按正则表达式匹配 关系运算 按关系运算匹配 awk模式匹配用法总结: 第一种方法:RegExp 第二种方法:运算符匹配 .RegExp 匹配/etc/passwd文件行中含有root字符串的所有行 awk 'BEGIN{FS=":"}/root/{print $0}' passwd 匹配/etc/…
shell编程系列15--文本处理三剑客之awk格式化输出printf printf的格式说明符 格式符 含义 %s 打印字符串 %d 打印十进制数 %f 打印一个浮点数 %x 打印十六进制数 %o 打印八进制数 %e 打印数学的科学计数法形式 %c 打印单个字符的ASCII码 printf的修饰符 修饰符 含义 - 左对齐 + 右对齐 # 显示8进制在前面加0,显示16进制在前面加0x awk格式化输出之printf总结: 格式符 %s 打印字符串 %d 打印10进制数 %f 打印浮点数 %x…
shell编程系列11--文本处理三剑客之sed利用sed删除文本中的内容 删除命令对照表 命令 含义 1d 删除第一行内容 ,10d 删除1行到10行的内容 ,+5d 删除10行到16行的内容 /pattern1/d 删除每行中匹配到pattern1的行内容 /pattern1/,/pattern2/d 删除匹配到pattern1的行直到匹配到pattern2的所有行内容 /pattern1/,10d 删除匹配到pattern1的行到10行的所有行内容 ,/pattern1/d 删除第10行直…
shell编程系列9--文本处理三剑客之sed概述及常见用法总结 sed的工作模式:对文本的行数据一行行处理,如下图 sed(stream editor),是流编辑器,依据特定的匹配模式,对文本逐行匹配,并对匹配行进行特定处理 语法格式 第一种形式:stdout | sed [option] "pattern command" 第二种形式:sed [option] "pattern command" file 命令格式:sed [option] "/pat…