awk的应用及选项

awk

文本三剑客最后一个命令

grep 查

sed  增删改查  增和改

awk 按行取列

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

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

awk的选项:

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

-v :变量赋值

内置变量:

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

$0:打印所有,展示所有的文本内容(默认)

NR:需要处理的行号

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

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

OFS:指定输出内容的分隔符。

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

命令格式:

wak -F ‘操作符 {动作}’ 处理对象

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

动作:默认就是打印。

awk怎么使用文本过滤

awk ‘/root/{print}’  /etc/passwd

BEGIN 打印模式

awk  ’BEGIN{...};{...};END{...}'   +文件

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

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

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

BEGIN{...}必要条件,{...},END{...}不是必要条件,是充分条件,可以不加

取幂运算

 awk 'BEGIN{print 2^3}'

-v 进行赋值

read -p "输入第一个数" a
read -p "输入第二个数" b
num=$(awk -v a="$a" -v b="$b" 'BEGIN{print a^b}')
echo $num

换一个分隔符

awk -v FS=":" -v OFS="==" '{print $1,$3}' /etc/passwd

RS指定分隔符换行

 awk -v RS=":" '{print $1}'

awk的三元表达式:**

**if**

**else语句**

**awk -F: 'num=($3>$4)?$3:$4;{print num,$0}'  /etc/passwd**

**?:if**

**:else**

**;fi**

**if ($3>$4)**

**echo $3**

**else**

**echo $4**

**fi

awk的精确筛选:

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

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

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

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

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

$NF 代表最后一个字段

awk -F: '$7~"bash" {print $1,$NF}' /etc/passwd

打印第七列包含bash这个字段的行,取的是行的第一列和最后一列,以:作为分隔符。

没有一个范围的表示方法,只能一个一个用逗号隔开。

 awk -F: '$7~"bash" {print $1,$2,$3}' /etc/passwd

取反

awk -F: '$7!~"bash" {print $1,$2}' /etc/passwd

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

awk -F: '$7=="/bin/bash" {print $1,$2}' /etc/passwd

逻辑关系:

awk -F: '($1=="bmm1")&&($NF=="/bin/bash") {print $1,$NF}' /etc/passwd

awk -F: '($1=="dn")||($NF=="/bin/bash") {print $1,$NF}' /etc/passwd

curl是一个功能强大的命令

主要作用就是获取和发送数据

curl www.baidu.com

curl 192.168.124.10

获取网页内容并且输出

-O 下载文件到本地

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

-x 发送post请求

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

主要awk的应用

awk 按行去列

awk 的精确筛选

awk 的运算符

取小数点几位以及小数运算怎么取整数。

num=$(awk 'BEGIN{printf "%.2f" , 1.2222+2.222}')

统计/etc下文件的总大小?awk

ll /etc/ | awk '/-/{print sum+=$5} END{print "文件的总大小:"sum/1024"M"}'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/740159.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年经济与国际贸易国际会议(ICEIT 2024)

2024年经济与国际贸易国际会议&#xff08;ICEIT 2024&#xff09; 2024 International Conference on Economy and International Trade 【重要信息】 大会地点&#xff1a;温州 大会官网&#xff1a;http://www.iciceit.com 投稿邮箱&#xff1a;iciceitsub-conf.com 【注意…

cityscapes数据集转换为COCO数据集格式【速来,我吃过的苦,兄弟们就别再吃了】

利用CityScapes数据集&#xff0c;将其转换为COCO格式的实例分割数据集 – – – 进而再训练出新的YOLOv8-seg模型 写个前言&#xff1a; 人嘛&#xff0c;总想着偷点懒&#xff0c;有现成的数据集&#xff0c;就得拿来用&#xff0c;是吧&#xff1f;确实是这样。 接下来的步…

如何使用mapXplore将SQLMap数据转储到关系型数据库中

关于mapXplore mapXplore是一款功能强大的SQLMap数据转储与管理工具&#xff0c;该工具基于模块化的理念开发&#xff0c;可以帮助广大研究人员将SQLMap数据提取出来&#xff0c;并转储到类似PostgreSQL或SQLite等关系型数据库中。 功能介绍 当前版本的mapXplore支持下列功能…

贪心算法系列(二)|摆动序列最长递增子序列|买卖股票的最佳时机|买卖股票的最佳时机II

摆动序列 分析 最经典的做法还是使用两个dp表的动态规划(代码放下面)这里采用贪心算法&#xff0c;直接上结论整个序列中&#xff0c;波峰波谷起点和重点的个数就是整个最长的摆动序列长度 那么如何判断波峰/波谷呢&#xff1f;也很简单left nums[i] - nums[i-1]right nu…

JBPM4 JBDL Demo

JBPM4 JBDL Demo 工作流样例&#xff0c;工作流程定义文件

面向对象六大设计原则--依赖倒置

目录 六大原则 定义 概念 Java语言中的表现 优点 在设计模式中体现 工厂方法模式 观察者模式 状态模式 示例 手机模块设计 五个示例 一、读取数据 二、发送消息 三、支付方式 四、日志记录 五、数据持久化 使用汽车驾驶进行说明 依赖的三种写法 1.构造函数…

基于FPGA的温湿度检测

初始化部分就不过多赘述&#xff0c;我会给出对应的文件&#xff0c;我只说明这部分里面涉及到使用的代码部分 1、数据的读取和校验 数据的读取和检验代码如下 always (posedge clk_us)if (data_temp[7:0] data_temp[39:32] data_temp[31:24] data_temp[23:16] data_te…

SQLite3的使用

14_SQLite3 SQLite3是一个嵌入式数据库系统&#xff0c;它的数据库就是一个文件。SQLite3不需要一个单独的服务器进程或操作系统&#xff0c;不需要配置&#xff0c;这意味着不需要安装或管理&#xff0c;所有的维护都来自于SQLite3软件本身。 安装步骤 在Linux上安装SQLite…

AI数据分析:集中度分析和离散度分析

在deepseek中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个Python脚本编写的任务&#xff0c;具体步骤如下&#xff1a; 读取Excel表格&#xff1a;"F:\AI自媒体内容\AI行业数据分析\toolify月榜\toolify2023年-2024年月排行榜汇总数据.xlsx&qu…

【PADS】软件下载安装、PADS—Altium Designer文件转换

PADS软件学习——软件下载、安装、解析 一、软件下载 PADS&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1J9z-Rl9sLjfnZYwlE3ZLPQ?pwdGLNG 提取码&#xff1a;GLNG解析软件&#xff1a;http://mentor.mr-wu.cn/PADS教学视频&#xff1a;https://www.bilibili.com/v…

“硝烟下的量子”:以色列为何坚持让量子计算中心落地?

自2023年10月7日新一轮巴以冲突爆发以来&#xff0c;支持巴勒斯坦伊斯兰抵抗运动&#xff08;哈马斯&#xff09;的黎巴嫩真主党不时自黎巴嫩南部向以色列北部发动袭击&#xff0c;以军则用空袭和炮击黎南部目标进行报复&#xff0c;双方在以黎边境的冲突持续至今。 冲突走向扑…

Django教程(001):安装及快速上手

1.1 Django安装 pip install django安装之后 c:\python39-python.exe-Scripts-pip.exe-django-admin.exe【安装django之后&#xff0c;工具&#xff0c;创建django项目】-Lib-内置模块-site-packages-flask-django(安装django之后&#xff0c;【django框架源码】)如下图&…

springboot 网上商城系统-计算机毕业设计源码08789

摘 要 随着互联网趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己推广出去&#xff0c;最好方式就是建立自己的互联网系统&#xff0c;并对其进行维护和管理。在现实运用中&#xff0c;应用软件的工作规则和开发步骤&#xff0c;采用Java技术建设网上商城系统。 本设…

HTTPS 代理的优点和缺点是什么?

HTTPS&#xff08;超文本安全传输协议&#xff09;作为一种基于HTTP加上SSL安全层的网络通信协议&#xff0c;已经成为互联网上广泛使用的IP协议之一。它在保证信息安全和隐私方面具有很多优势&#xff0c;但也存在一些缺点。接下来&#xff0c;我们就来探究一下HTTPS协议的优缺…

导致代理IP延迟高的原因

很多用户在使用代理IP进行网络访问时&#xff0c;可能会遇到代理IP超时的情况&#xff0c;也就是代理IP的延迟过高。代理IP延迟过高会影响用户的网络体验和数据获取效率。因此&#xff0c;了解代理IP延迟过高的原因很重要。以下是导致代理IP延迟过高的一些常见原因&#xff1a;…

相位和展开相位

相位 (Phase) 相位是一个周期信号在一个周期内的位置&#xff0c;通常以角度&#xff08;度或弧度&#xff09;表示。在许多应用中&#xff0c;相位被限制在一个周期内。例如&#xff0c;相位通常被限定在 −180∘到 180∘ 或 0∘ 到 360∘ 之间。 示例 −90∘ 表示信号在周…

fvcore库的一些功能和使用

目录 一、安装fvcore库 二、使用 fvcore是Facebook开源的一个轻量级的核心库&#xff0c;它提供了各种计算机视觉框架中常见且基本的功能。其中就包括了统计模型的参数以及FLOPs等。 项目地址&#xff1a;fvcore 一、安装fvcore库 pip install fvcore 二、使用 1、计算模…

【实物资料包】基于STM32智能台灯设计

【实物资料包】基于STM32智能台灯设计 需要资料的请在文章结尾获取哦~~~~&#xff08;如有问题私信我即可&#xff09; 1.介绍 1 添加wifi模块模块&#xff0c;可通过wifi模块APP或者手动按钮切换自动/手动模式 2 自动模式下&#xff0c;台灯可以感应是否有人落座&#xff0…

干货 | 准备换ERP系统?来看看这篇文章!

当前客户的痛点 在当今竞争激烈的市场环境中&#xff0c;企业面临着诸多挑战和痛点&#xff0c;尤其是在管理和运营方面。让我们以一家中小型制造业企业为例&#xff0c;探讨他们所面临的主要痛点&#xff1a; 分散的数据管理&#xff1a;企业各部门之间信息孤岛严重&#xff…

Ci2451和Ci2454:2.4GHz无线MCU的芯片对比数据资料分析

一、2.4GHz无线MCU芯片的背景介绍 1、开头我们先聊聊&#xff0c;关于南京中科微2.4GHz无线MCU芯片&#xff08;Ci2451、Ci2454、CSM2433)是建立在现有的2.4GHz射频芯片基础上面&#xff0c;它的内部是集成了8位RISC内核&#xff0c;且集成丰富的MCU资源、更小的尺寸可以来满足…