awk内置字符串函数 awk 格式化输出
i249 ~ # ps -efl|head -1|awk '$2~/S/{print $2}'
S
i249 ~ # ps -efl|awk '$2~/S/{print $2}'
S
S
S
S
printf
- 左对齐
Width 域的步长,用0表示0步长
.prec 最大字符串长度,或小数点右面的位数
%c ASCII字符
%d 整型
%e 科学计数法
%f 浮点型
%g awk决定哪种浮点数转换e或者f
%o 八进制
%s 字符串
%x 十六进制
例一:
i161 admin # df -Th|awk '{print $1,$5}'
Filesystem Avail
rootfs 23G
/dev/root 23G
tmpfs 16G
rc-svcdir 956K
cgroup_root 10M
udev 9.8M
shm 16G
/dev/md4 2.5T
i161 admin # df -Th|awk '{printf "%-15s %-15s\n",$1,$5}'
Filesystem Avail
rootfs 23G
/dev/root 23G
tmpfs 16G
rc-svcdir 956K
cgroup_root 10M
udev 9.8M
shm 16G
/dev/md4 2.5T
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
substr(s,p) 返回字符串s中从p开始的后缀部分
substr(s,p,n) 返回字符串s中从p开始的长度为n的后缀部分
例一:
[root@localhost shell]# awk -F ":" 'gsub(/502/,213213213) {print$0}' passwd
test:x:213213213:213213213::/home/test:/bin/bash
[root@localhost shell]#
例二:
[root@localhost shell]# awk -F ":" 'gsub(/502/,213213213,$3) {print$0}' passwd
test x 213213213 502 /home/test /bin/bash
[root@localhost shell]#
例三:
[root@localhost shell]# awk 'BEGIN {print index("test","t")}' passwd
1
[root@localhost shell]#
例四:
[root@localhost shell]# awk -F ":" '{if($1=="test"){print$0,length($1)}}' passwd
test:x:502:502::/home/test:/bin/bash 4
[root@localhost shell]#
例五:
[root@localhost shell]# awk -F ":" '{if($1=="test") {print substr($1,1,3)}}' passwd
tes
[root@localhost shell]#
例六:
[root@localhost shell]# awk 'BEGIN {STR="a few good men"} END{print substr(STR,7)}' passwd
good men
[root@localhost shell]#
例七:
[root@localhost shell]# STR=test.txt
[root@localhost shell]# echo $STR
test.txt
[root@localhost shell]# echo $STR | awk '{print substr($0,1,4)}'
test
[root@localhost shell]# echo $STR | awk '{print substr($0,6)}'
txt
awk内置字符串函数 awk 格式化输出的更多相关文章
- linux awk 内置函数详细介绍(实例)
这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...
- linux awk 内置函数实例
awk内置函数,主要分4种:算数函数.字符串函数.时间函数.一般函数 一.算术函数 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y, x ) 返回 y/x ...
- linux awk 内置函数详细介绍(实例)
这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...
- awk内置函数、外部变量
外部变量 ①获取外部变量 格式: awk '{action}' 变量名=变量值 ,这样传入变量可以在action中获得值. 示例: test='awk test'--day-5 外部变量 ①获取外部变 ...
- awk内置变量 awk有许多内置变量用来设置环境信息,这些变量可以被改变,下面给出了最常用的一些变量。
ARGC 命令行参数个数 ARGV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME awk浏览的文件名 FNR 浏览文件的记录数 FS 设置输入域分隔符,等价于命令行 ...
- 【转】awk内置变量
awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入 ...
- Linux基础教程 linux awk内置变量使用介绍
awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是兄弟连Linux培训 给大家介绍的awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个 ...
- awk 内置变量
awk 内置变量 FS 设置输入域分隔符,等价于命令行 -F选项 OFS 输出域分隔符 NF 浏览记录的域的个数NR 已读的记录数RS 控制记录分隔符 ORS 输出记录分隔符 substr 截取指定的 ...
- 『忘了再学』Shell基础 — 29、AWK内置变量
目录 1.AWK内置变量 2.练习说明 (1)$n变量练习 (2)FS变量练习 (3)NF变量和NR变量练习 3.总结: 1.AWK内置变量 AWK内置变量如下表: awk内置变量 作用 $0 代表目 ...
随机推荐
- Redis——分布式简单使用
Redis简介:Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis安装:参考博客http://www ...
- GDI+中发生一般性错误的解决办法(转帖)
今天在开发.net引用程序中,需要System.Drawing.Image.Save 创建图片,debug的时候程序一切正常,可是发布到IIS后缺提示出现“GDI+中发生一般性错误”的异常.于是开始“ ...
- python~实现tab补全
文章摘自:http://www.jb51.net/article/58009.htm 第一.如在在vim下实现代码的补全功能. 想要为vim实现自动补全功能,则要下载插件 cd /usr/local/ ...
- UVA 540 stl
Queues and Priority Queues are data structures which are known to most computer scientists. The Team ...
- 【探秘ES6】系列专栏(一):ES6简介
摘要:新一代JavaScript标准,ES6即将发布.[探秘ES6]系列专栏将一一剖析ES6的诸多新特性,让Web开发者对此有清晰全面的了解.本文为系列的第一篇,带你了解ES6到底是什么以及有哪些令人 ...
- PowerDesigner反向数据库时遇到[Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句。SQLSTATE = 37错误解决方法
逆向工程中,有时会出现如下错误 ... [Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句 SQLSTATE = 37000 解决方案: 1. ...
- The Reflection And Amplification Attacks && NTP Reply Flood Attack Based On NTP
目录 . NTP简介 . NTP协议格式 . NTP Reflect反射漏洞和NTP协议的关系 . 漏洞触发的前提和攻击需要的步骤 . 针对漏洞的攻防思考 1. NTP简介 Network Time ...
- HD2444The Accomodation of Students(并查集判断二分图+匹配)
The Accomodation of Students Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ( ...
- UVa OJ 140 - Bandwidth (带宽)
Time limit: 3.000 seconds限时3.000秒 Problem问题 Given a graph (V,E) where V is a set of nodes and E is a ...
- What to call your Academic Event