文本三剑客之首awk

awk

文本三剑客最后一个命令

grep 查

sed 增删改查 主要增和改

awk 按行去列

awk默认的分隔符:空格,tab键,多个空格自动压缩成一个。

awk的工作原理:根据指令信息,逐行的读取文本内容,然后按照条件进行格式化输出。

awk的选项:

-F 指定分隔符,默认就是空格

-v 变量赋值

内置变量:

$# 按行需要取出的第几个字段

$0 打印所有,展示所有的文本内容

NR 需要处理的行号

NF 处理行的字段个数,$NF: 当前行的最后一段

FS FS和F是一样的,都是指定分隔符,-F: FS=":"

OFS 指定输出内容的分隔符

RS 行分割符,可以根据RS的设置把文件内容切成多个记录,也可以改变行的分隔符,默认是\n,回车,换行。

命令格式:

awk -F '操作符 (动作)' 处理对象

-F指定分隔符,如果是空格可以不加

动作,默认就是打印

奇偶数打印:

awk 'NR%2==0{print}' awk.txt

打印第1和第3行的第3列

awk -F: 'NR==1{print 3} NR==3{print 3}' /etc/passwd

awk怎么使用文本过滤

awk '/root/{print}' /etc/passwd

BEGIN打印模式

awk 'BEGIN{...};{...};End{...}'

BEGIN{...}预先的条件,执行awk命令前的初始化操作

{...}处理条件,如何对初始值进行操作

End{...}处理完之后的操作,一般都是打印

取幂运算

awk 'BEGIN{print 2^3}'

awk的精确筛选

$(><==)用于比较数值

$n!~"字符串":该字符段包含某个字符串

$n=="字符串" 该字段等于这个字符串

$n!="字符串" 该字段不等于这个字符串

$NF 代表最后一个字段

逻辑关系:

且和或

curl是一个功能强大的命令

获取和发送数据

curl <www.baidu.com>

curl 192.168.233.10

获取网页内容并且输出

-O 下载文件到本地

-o 将文件下载到指定的路径

-x 发送post请求

-i 可以获取web软件的版本(服务端没有隐藏版本号)

相关推荐
Heavy sea2 小时前
Linux串口应用编程
linux·c语言·1024程序员节
Justin_192 小时前
Galera Cluster部署
linux·服务器·nginx
洛克大航海4 小时前
虚拟机 Ubuntu 中安装 Google Chrome 浏览器
linux·chrome·ubuntu
DeeplyMind5 小时前
AMD rocr-libhsakmt分析系列3-4:svm-reserve模式实现分析
linux·驱动开发·1024程序员节·amdgpu·kfd·rocr
大米粥哥哥5 小时前
Qt QProcess基于Linux的命令管道符号无效问题【已解决】
linux·qt·shell·qprocess·1024程序员节·管道符号
北京迅为6 小时前
【北京迅为】iTOP-4412精英版使用手册-第六十七章 USB鼠标驱动详解
linux·人工智能·嵌入式·4412
骑士9991116 小时前
rabbitMQ 的安装和使用
linux·rabbitmq
小白不想白a6 小时前
【shell】每日shell练习:系统备份文件管理/系统性能趋势分析
linux·服务器
咬_咬6 小时前
C++仿muduo库高并发服务器项目:Channel模块
linux·c++·channel·1024程序员节·muduo·高并发服务器
csdn_aspnet6 小时前
如何在 Ubuntu 24.04/22.04/20.04 上安装 MySQL 8.0
linux·mysql·ubuntu