Linux的awk使用方式

awk

编辑器

流编辑器

擅长处理列

读入一行 执行一次主输入循环

复制代码
语法
# awk  选项  '{}'  文件名

{} 主输入循环

print  打印

字符串 必须加引号
数字   不能加引号
变量   不能加引号   

[root@web ftp]# awk '{print "abc"}' a.txt
abc
abc
abc
abc
abc

# awk '{abc=8;print abc}' a.txt
8
8
8
8
8

记录

以记录分隔符分割的字符串

\n是默认的记录分隔符

复制代码
RS record  separator

字段
	包含在记录内
	以字段分隔符分割的字符串	
	空白部分 是默认的字段分隔符    
		空格 多个空格 tab键  
		当记录分隔符不是\n的时候,\n会变成默认的字段分隔符

FS field separator
$1 第一个字段
$2 第二个字段
$...
NF number of field
NR number of record
javascript 复制代码
# awk -F : '{print $1}' /etc/passwd
# awk -F : '{print $1$3}' /etc/passwd
# awk -F : '{print $NF}' /etc/passwd
# sed -r 's/(.*)(:x:)([0-9]+)(:.*)/\1\3/' /etc/passwd

# awk -F : '/root/{print $1$3}' /etc/passwd
root0
operator11
[root@web log]# grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

# awk -F : 'NR==5{print $1$3}' /etc/passwd
lp4
相关推荐
invicinble8 小时前
对linux形成认识
linux·运维·服务器
小Pawn爷8 小时前
14.VMmare安装ubuntu
linux·运维·ubuntu
技术路上的探险家8 小时前
8 卡 V100 服务器:基于 vLLM 的 Qwen 大模型高效部署实战
运维·服务器·语言模型
有谁看见我的剑了?9 小时前
介绍一款 测试 DNS解析成功率的网站
运维
半桔9 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
绵绵细雨中的乡音9 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
HABuo9 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
Howrun77710 小时前
关于Linux服务器的协作问题
linux·运维·服务器
小白同学_C10 小时前
Lab3-page tables && MIT6.1810操作系统工程【持续更新】
linux·c/c++·操作系统os
十年磨一剑~11 小时前
Linux程序接收到sigpipe信号崩溃处理
linux