当前位置: 首页 > news >正文

awk(常用)

这个有点难 O.o

一、awk

#	语法
awk 参数  模式  {动作} 文件#	第一列,包含p的
$1~"p"
#	第一列,不包含p的
$1!~"p"
#	开始时干嘛,结束时干嘛
awk 'BEGIN{开始时做的事}END{结束时做的事}{print $0}' 文件

1、内置变量(常用的)

FS	#	指定分割符 
NF	#	分了多少列
NR	#	行数
$0	#	全部列
$n	#	指定列
OFS	#	指定输出分隔符

2、小案例

#	显示文件第2行的内容
awk 'NR==2{ print NR,$0}'  文件
#	显示文件第2~4行的内容,且显示行号
awk 'NR==2,NR==4 {print NR,$0}' 文件
#	显示文件第3行的第1列和最后两列
awk 'NR==3{print $1,$NF-1,$NF}'  文件
#	显示名字以 j 开头的姓名、性别,带表头信息并用制表位分割信息(   $1~/^j/   )
awk 'BEGIN{print "姓名以j开头的信息如下:"} $1~/^j/ {printf "%s\t%.2f\t%.2f\n",$1,$3,$4 }' 文件
%s		字符串
%.2f	保留2位小数

3、有点小强度

#	查看 3-5 行以 - 作为分隔符,的第3和最后一列,显示行号
awk -F "-" 'NR==3,NR==5 {print NR,$3,$NF}' 文件
#	printf 指定格式
awk '{printf $1"\t"$2"\n"}' 文件
#	用 : 作为分隔符
awk -F ":" '{print $1,$3}' 文件
#	用 -- 作为输出分隔符
awk  'BEGIN{OFS="--"}{print $1,$NF}' 文件
#	查找数字后二位小数
awk '{printf "姓名:%s\t性别:%c\t\t分数:%2.f\n",$1,$2,$3} ' 文件
#	在开始是打印------结束是========
awk 'BEGIN{print "---"}END{print "==="}{print $0}' 文件
#	显示1-3行,指第一行,倒数第二行,倒数第1行
awk 'NR==1,NF==3{printf "%s\t%.2f\t%.2f\n",$1,$(NF-1),$NF}'  info2.txt 
#	求某一列的平均值
awk 'BEGIN{sum=0 }{sum+=$3} END{printf "%.2f",sum/NR } ' 文件 
#	某一列的和
awk 'BEGIN{sum=0}{sum+=$3}END{print sum}' 
#	求某一列的最大值
awk 'BEGIN{max=0}{if ($3>max) (max=$3)}END{print max}'
#	查找ip地址
ifconfig ens33 | awk 'NR==2{print $2}'
#	显示成一下图片那样
awk -F ":" 'BEGIN{print "用户名   uid     登入shell"} OFS="\t"{print  $1,$3,$NF}' /etc/passwd

#	把一些数据,写入文本进行练习
tom     M       99      98.5    95
peter   M       100     87      95.5
marry   F       98      85      94.5
jerry   M       99      75.5    87
john    M       80      76      84
rose    F       87      69      96

二、简单小工具

1、sort 排序

-f		忽略大小写
-t		指定分隔符
-nk	2	第二列数(升序)
-r		反向排序
-u		去重
#	字母顺序排序
sort 文本	
#	指定分隔符 : 降序排序第三列
sort -t ":" -rnk 3 /etc/passwd
#	升序排序
sort -t ":" -nk 3 /etc/passwd

2、unqi

uniq	去掉连续相同的行,进行去重
-c	显示重复的次数
-u	显示仅出现1次的`一般配合sort,先排序,在去重`
sort 文件 | uniq 

相关文章:

awk(常用)

这个有点难 O.o 一、awk # 语法 awk 参数 模式 {动作} 文件# 第一列,包含p的 $1~"p" # 第一列,不包含p的 $1!~"p" # 开始时干嘛,结束时干嘛 awk BEGIN{开始时做的事}END{结束时做的事}{print $0} 文件 1、内置变量&…...

Amazon Web Services (AWS)

一、Amazon Web Services (AWS)介绍 1、简介 2、产品 AWS 提供了各种云计算服务,包括 DynamoDB、S3、EC2、Lambda 等等。 登录aws后点击所有服务也可以看到amazon的所有服务: 3、免费试用产品 除了免费的Amazon Step Functions、Amazon Lambda&#…...

Java EE 技术基础知识体系梳理

1. Java EE 平台概述 1.1 发展历程 Java EE 从 J2EE 发展而来,经历了多个版本的演进,从早期的 J2EE 1.2 到最新的 Jakarta EE。 1.2 架构特点 多层架构: 客户端层:用户界面,如 Web 浏览器、移动应用等。Web 层&…...

【2025最新计算机毕业设计】基于SpringBoot+Vue电脑在线装机指南教程网站【源码+文档】

作者简介:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容:🌟Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能…...

HDFS新增节点和删除datanode节点

在实际的hadoop环境中,有时我们需要新增或者删除datanode节点,来达到扩容或缩容的目的,本文就来讲解如何新增和删除datanode。 新增节点和删除节点会涉及两个关键的配置项(hdfs-site.xml文件中): dfs.hos…...

数据结构-线性表-具有独立头节点的双向循环链表

完整代码&#xff1a; #define _CRT_SECURE_NO_WARNINGS #pragma warning(disable:6013)#include<stdio.h> #include<malloc.h> #include<stdlib.h> #include<time.h>// 一个具有独立头节点的双向循环链表&#xff0c; // 区别在于将头节点和数据区域…...

CSS 响应式设计之媒体查询技术

CSS 媒体查询&#xff08;Media Queries&#xff09;是一种根据不同设备的特性&#xff08;如屏幕宽度、分辨率、方向等&#xff09;来应用不同的 CSS 样式的技术。它通常用于响应式设计&#xff0c;帮助网页在不同设备和屏幕尺寸下良好地展示。 基本语法 media (条件) {/* 样…...

HARCT 2025 分论坛4:智能系统传感、传感器开发和数据融合中的智能数据分析

机电液一体化与先进机器人控制技术国际会议&#xff08;HARCT 2025&#xff09;将于2025年1月3日-6日在中国广西桂林召开。本届会议围绕“机电液一体化”“机器人”“控制技术”等最新研究成果&#xff0c;邀请海内外在这一领域贡献卓著的专家学者做精彩致辞和报告。 会议期间…...

云计算研究实训室建设方案

一、引言 随着云计算技术的迅速发展和广泛应用&#xff0c;职业院校面临着培养云计算领域专业人才的迫切需求。本方案旨在构建一个先进的云计算研究实训室&#xff0c;为学生提供一个集理论学习、实践操作、技术研发与创新于一体的综合性学习平台&#xff0c;以促进云计算技术…...

VRT: 关于视频修复的模型

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月15日14点34分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文链接 点击开启你的论文编程之旅…...

实习冲刺Day22

算法题 路径总和 112. 路径总和 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:bool hasPathSum(TreeNode* root, int targetSum) {if(!root)return 0;//节点为空返回0int sumroot->val;//记录当前节点的值int ntargetSum-sum;//距离目标值还差多少if…...

datawhale2411组队学习之模型压缩技术1:模型剪枝

文章目录 一、环境配置二、模型压缩2.1 模型压缩简介2.2 模型压缩评价指标 三、 模型剪枝3.1 模型剪枝简介3.2 何为剪枝&#xff08;What is Pruning?&#xff09;3.3 剪枝标准&#xff08;How to prune?&#xff09;3.4 剪枝频率&#xff08;How often?&#xff09;3.5 剪枝…...

高防服务器的费用受到哪些原因影响?

在如今的互联网社会中&#xff0c;越来越多的企业都开始了线上网络业务的发展&#xff0c;网络安全也日益受到了重视&#xff0c;高防服务器成为了众多企业的首要选择&#xff0c;不仅可以帮助企业有效抵御各种网络攻击&#xff0c;保证网站和应用的稳定性。 但是高防服务器与其…...

中断和异常处理,嵌入式行业的门槛?

Linux内核中&#xff0c;中断和异常是重要的机制&#xff0c;用于响应硬件事件和处理异常情况。它们直接关系到系统的稳定性和性能。本文将通过清晰的结构、逻辑图、表格&#xff0c;深入解析中断和异常处理的种类、流程以及它们与系统调用和用户空间的联系。 1. 中断和异常概述…...

latex中英文环境中双引号怎么输入

latex中英文环境中双引号怎么输入 1. **英文环境中的双引号**2. **中文环境中的双引号**3. **嵌套引号**4. **一致性处理**小结&#xff1a; 在 LaTeX 中&#xff0c;输入双引号的方法取决于文档的语言环境。以下是针对英文和中文环境的双引号输入方法&#xff1a; 1. 英文环境…...

用 Python 从零开始创建神经网络(三):添加层级(Adding Layers)

添加层级&#xff08;Adding Layers&#xff09; 引言1. Training Data2. Dense Layer Class 引言 我们构建的神经网络变得越来越受人尊敬&#xff0c;但目前我们只有一层。当神经网络具有两层或更多隐藏层时&#xff0c;它们变成了“深度”网络。目前我们只有一层&#xff0c…...

前端知识点---构造函数(javascript)

文章目录 前端知识点---构造函数(Javascript)1. 定义构造函数2. 使用构造函数创建对象3. 工作原理4. 构造函数与原型5. 类的语法糖6. 注意事项 前端知识点—构造函数(Javascript) 在我的文章 “对象” 里我提到了构造函数 , 前端知识点—Javascript的对象(Javascript) 因为day…...

Nginx 上安装 SSL 证书并启用 HTTPS 访问

本文将介绍如何在 Nginx 上为你的域名安装 SSL 证书&#xff0c;并配置 Nginx 使用 HTTPS 安全访问。我们将使用 Let’s Encrypt 免费的 SSL 证书&#xff0c;通过 Certbot 生成并管理证书&#xff0c;然后配置 Nginx 实现 HTTPS 加密访问。同时&#xff0c;我们将解决因 SSL 证…...

谷歌Gemini发布iOS版App,live语音聊天免费用!

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;专注于分享AI全维度知识&#xff0c;包括但不限于AI科普&#xff0c;AI工…...

docker运行ActiveMQ-Artemis

前言 artemis跟以前的ActiveMQ不是一个产品&#xff0c;原ActiveMQ改为ActiveMQ Classic, 现在的artemis是新开发的&#xff0c;和原来不兼容&#xff0c;全称&#xff1a;ActiveMQ Artemis 本位仅介绍单机简单部署使用&#xff0c;仅用于学习和本地测试使用 官网&#xff1a;…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama&#xff08;有网络的电脑&#xff09;2.2.3 安装Ollama&#xff08;无网络的电脑&#xff09;2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

【Linux】Linux安装并配置RabbitMQ

目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的&#xff0c;需要先安…...

鸿蒙HarmonyOS 5军旗小游戏实现指南

1. 项目概述 本军旗小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;采用DevEco Studio实现&#xff0c;包含完整的游戏逻辑和UI界面。 2. 项目结构 /src/main/java/com/example/militarychess/├── MainAbilitySlice.java // 主界面├── GameView.java // 游戏核…...

STM32标准库-ADC数模转换器

文章目录 一、ADC1.1简介1. 2逐次逼近型ADC1.3ADC框图1.4ADC基本结构1.4.1 信号 “上车点”&#xff1a;输入模块&#xff08;GPIO、温度、V_REFINT&#xff09;1.4.2 信号 “调度站”&#xff1a;多路开关1.4.3 信号 “加工厂”&#xff1a;ADC 转换器&#xff08;规则组 注入…...

react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架

1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…...

简单介绍C++中 string与wstring

在C中&#xff0c;string和wstring是两种用于处理不同字符编码的字符串类型&#xff0c;分别基于char和wchar_t字符类型。以下是它们的详细说明和对比&#xff1a; 1. 基础定义 string 类型&#xff1a;std::string 字符类型&#xff1a;char&#xff08;通常为8位&#xff09…...