linux-awk命令

目录

[1.linux awk 模糊查询](#1.linux awk 模糊查询)

[2.linux awk 取列 2](#2.linux awk 取列 2)

[3.linux awk 多个条件and查询](#3.linux awk 多个条件and查询)

[4.linux awk取列 1](#4.linux awk取列 1)

[5.linux awk取行](#5.linux awk取行)

[6.linux awk 所有pod日志查询](#6.linux awk 所有pod日志查询)

[7.linux awk 批量删除pod](#7.linux awk 批量删除pod)


1.linux awk 模糊查询

释:~ 为包含,!~ 为不包含

【1】查询test.log文件中整行中包含以 12 开头的行

awk '$0 ~ /^[12]/' test.log

【2】查询test.log文件中整行中包含以 12 结尾的行

awk '$0 ~ /[12]/' test.log

2.linux awk 取列 2

【5】取出最后一列

释:NF number of field 每行有多少列

awk -F':' '{print $NF}' /etc/passwd

【6】多个连续符号合并为1个分隔符;如连续多个空格、多个单斜杠为分割符

分割: 12333 567/5

awk -F'[ /]+' '{print $3}' ip.txt

【7】以分隔符 : 或者 /,并取出第三列

awk -F ': | /' ip.txt

【8】取整行

awk '{print $0}' test.log

【9】取出第3列大于0 并且 小于1000 的行并且展示第1列、第3列,对齐显示

awk -F: '3\>0 \&\& 3<1000{print 1,3}' passwd | column -t

【10】取出行号等于1且展示第3列

awk -F: 'NR==1{print 1,3}' test.log

3.linux awk 多个条件and查询

awk '/getVideoRealtimeUrl/ && /43122300831327000527/' vms-southapi-576bbcbbc8-nl7s5.log

4.linux awk取列 1

【1】取出第一列和第三列

ll -h | awk '{print 1,3}'

【2】取出行号和第三列

ll -h | awk '{print NR,$3}'

【3】取出行号和第三列并对齐显示

ll -h | awk '{print NR,$3}' | column -t

【4】取出行号和第三列并对齐显示并制定分隔符

ll -h | awk -F':' '{print NR,$3}' | column -t

5.linux awk取行

【1】 从test.log取出从包含 A 到包含 B 的行(范围)

awk '/A/,/B/' test.log

【2】从test.log取出第3行到最后一行的内容(行)

awk 'NR >= 3' test.log

【3】从test.log取出从包含 A 或包含 B 的行(或)

awk '/A|B/' test.log

【4】从test.log取出行号大于等于3 并且 小于等5(行)

awk 'NR>=2 && NR <=5'

【5】从test.log取出制定行号的内容

awk 'NR==5' test.log

6.linux awk 所有pod日志查询

kubectl get pod |grep fileserver |awk '{print $1}'|xargs -I @ sh -c "echo =====@======= ;kubectl exec @ cat /logs/fileUpload.log |grep 0b839528b7b84bbd8a6e983e845aecb238a1a81ebc2c412fa38d00a89b0692b6"

kubectl get pod | grep das-hk | awk '{print 1}' \| while read -r pod; do echo "===== pod ====="; kubectl exec "$pod" -- sh -c "grep -r '45051200991327000001' /log/Arges/log/DAS_HK*/*.log"; done

7.linux awk 批量删除pod

kubectl get pod |grep Evicted |awk '{print $1}' |xargs kubectl delete pod --force --grace-period=0

相关推荐
NineData7 分钟前
NineData 亮相 2026 德国汉诺威工业博览会,加速拓展欧洲及全球市场
运维·数据库·人工智能·数据库管理·ninedata·ai服务·玖章算术
宵时待雨10 分钟前
linux笔记归纳3:linux开发工具
linux·运维·笔记
magrich25 分钟前
安装NoMachine并解决无外接显示器桌面黑屏
linux·运维·服务器
fish_xk40 分钟前
Linus基础指令
linux·服务器
L1624761 小时前
Nginx 6 种发布方式(滚动发布、蓝绿发布(Blue/Green)、金丝雀发布(Canary 灰度)等) 实操全集(配置 + 分步操作 + 回滚)
运维·nginx
宁波阿成1 小时前
在ubuntu22.04源码级安装sub2api
linux·运维·ubuntu·ai·api·token·中转站
charlie1145141911 小时前
嵌入式Linux驱动开发(7) 从虚拟设备到真实硬件 —— LED驱动硬件基础
linux·开发语言·驱动开发·内核·c
Mortalbreeze2 小时前
软件包管理器yum和编辑器vim详解 —— 附带vim配置链接
linux·服务器
李日灐2 小时前
< 7 > Linux 开发工具:git 版本控制器 和 cgdb/gdb 调试器
linux·运维·服务器·开发语言·git·调试器·gdb/cgdb
青木9602 小时前
前后端开发调试运行技巧
linux·服务器·前端·后端·npm·uv