文本三剑客之首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软件的版本(服务端没有隐藏版本号)

相关推荐
REDcker几秒前
C++ new、堆分配与 brk / mmap
linux·c++·操作系统·c·内存
鸠摩智首席音效师8 分钟前
什么是 Unix / Linux 中的僵尸进程 ?
linux·服务器·unix
三万棵雪松13 分钟前
【Linux 物联网网关主控系统-感知层部分(三)】
linux·物联网·嵌入式linux
云道轩23 分钟前
在rocky linux 9.x上安装 Chrome
linux
小疙瘩24 分钟前
VirtualBox 下 CentOS-10 下 Docker 安装 Mysql57 (包括 使用 Docker Compose 部署)
linux·docker·centos
郝学胜-神的一滴27 分钟前
Linux高性能网络编程基石:epoll核心与文件描述符限制全解
linux·服务器·网络·c++·后端
cnnews28 分钟前
Termux中安装python包
android·linux·开发语言·python·安卓·termux
淼淼爱喝水1 小时前
openEuler 下 Ansible 模块缺失 / 损坏后重装完整教程
linux·openeuler·技术实操
山城码农笑松哥2 小时前
Rocky Linux Centos 9.6 完全离线安装rabbitmq4.2
linux·rabbitmq
江畔何人初7 小时前
iptables 和 IPVS 代理模式 Service 的区别
linux·运维·服务器·网络·云原生·kubernetes·代理模式