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

网络安全 Day13-Linux三剑客awk知识

Linux三剑客awk知识

  • 1. awk 介绍
  • 2. awk 语法
  • 3. 练习

1. awk 介绍

  • awk 是一门语言, 也是一个命令,
  • Linux 有三剑客命令: grep/sed/awk
  • 三剑客的特长
    • grep 过滤内容
    • sed 取行
    • awk 取列

2. awk 语法

  • 取列
    • 取第一列文件($1): awk '{print $1} 文件'
    • 指定分隔符为文件: awk -F "指定的分隔符" 文件
    • 指定多分隔符: awk -F "[/@ #]+" '{print $1,$2}' 文件
  • 取行: awk NR==2 oldboy.txt
  • 过滤: awk '/过滤的内容/' 文件

3. 练习

  • 准备:创建一个文件, 并在只其中追加内容

    [root@oldboyedu ~] echo "oldboy oldgirl" >>oldboy.txt
    [root@oldboyedu ~] echo "oldboy oldgirl" >>oldboy.txt
    [root@oldboyedu ~] cat oldboy.txt
    oldboy oldgirl
    oldboy oldgirl
    
  • 普通取列

    • 取第一列
      [root@oldboyedu ~] awk '{print $1}' oldboy.txt 
      oldboy
      oldboy
      
    • 取整行(搭配着grep可能更好用)
      [root@oldboyedu ~]# awk '{print $0}' oldboy.txt 
      oldboy oldgirl
      oldboy oldgirl
      
  • 指定分隔符取列(-F)

    • 取/etc/passwd的第1列: awk -F ":" '{print $1}' /etc/passwd
    • 取/etc/passwd的第2列: awk -F ":" '{print $2}' /etc/passwd
    • 取/etc/passwd的尾列: awk -F ":" '{print $NF}' /etc/passwd
    • 取/etc/passwd的倒数第2列: awk -F ":" '{print $(NF-1)}' /etc/passwd
  • 同时输出多列

    • 取/etc/passwd的第1列和第2列: awk -F ":" '{print $1,$2}' /etc/passwd
    • 取/etc/passwd的第1列、第3列和最后一列: awk -F ":" '{print $1,$3,$NF}' /etc/passwd
  • 综合练习

    • 从ip a或ifconfig结果中取出Ip地址 p a|grep '10.0.0'|awk '{print $2}'|awk -F/ '{print $1}'或者ifconfig eth0|grep '10.0.0'|awk '{print $2}'
    • 从ip a结果中取出Ip地址: ip a|awk -F "[ /]+" 'NR==9{print $3}'
    • 取出stat /etc/hosts中的0644: stat /etc/hosts|awk -F "[(/]" 'NR==4{print $2}'
  • 准备

    [root@oldboyedu ~] seq 5 >oldboy.txt 
    [root@oldboyedu ~] cat oldboy.txt
    1
    2
    3
    4
    5
    
  • 取行练习

    • 取第二行: awk NR==2 oldboy.txt
    • 取第2-4行: awk NR==2,NR==4 oldboy.txtawk 'NR>1&&NR<5' oldboy.txtawk 'NR>=2&&NR<=4' oldboy.txt

相关文章:

网络安全 Day13-Linux三剑客awk知识

Linux三剑客awk知识 1. awk 介绍2. awk 语法3. 练习 1. awk 介绍 awk 是一门语言, 也是一个命令,Linux 有三剑客命令: grep/sed/awk三剑客的特长 grep 过滤内容sed 取行awk 取列 2. awk 语法 取列 取第一列文件($1): awk {print $1} 文件指定分隔符为文件: awk -F "指…...

java讲解Spring Boot配置文件级别 相互覆盖关系 解决一方不愿意给数据库密码 一方不愿意给源码时 数据库配置问题

前面 我们讲过Spring Boot 修改临时变量的方式 但另一个场景 就是 我们 在本地开发环境 用的是一个配置 但如果项目经理上线 他想改这些配置 怎么弄呢 特别是数据库之类的配置 很多线上是不太一样的 那么 我们先看一个比较基本的方法 在配置文件的同目录下创建一个目录 叫 con…...

点击表格行高亮

css中三元表达式 :class"[activeIndex index ? color : , item]"点击行高亮 <div click"actvied(index)" :class"[activeIndex index ? color : , item]"v-for"(item, index) in tableData" :key"index">{{ item…...

基于粒子群优化算法的配电网光伏储能双层优化配置模型[IEEE33节点](选址定容)(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f308;4 Matlab代码、数据、讲解 &#x1f4a5;1 概述 由于能源的日益匮乏&#xff0c;电力需求的不断增长等&#xff0c;配电网中分布式能源渗透率不断提高&#xff0c;且逐渐向主动配电网方…...

零代码爬虫平台SpiderFlow的安装

什么是 Spider Flow &#xff1f; Spider Flow 是一个高度灵活可配置的爬虫平台&#xff0c;用户无需编写代码&#xff0c;以流程图的方式&#xff0c;即可实现爬虫。该工具支持多数据源、自动保存至数据库、任务监控、抓取 JS 动态渲染页面、插件扩展&#xff08;OCR 识别、邮…...

Java 与其他编程语言:比较分析

Java 擅长可移植性和可靠性&#xff0c;Python 擅长通用性和简单性&#xff0c;JavaScript 擅长 Web 开发&#xff0c;C 擅长性能&#xff0c;Go 擅长效率。 在广阔的软件开发世界中&#xff0c;选择正确的编程语言对于任何项目的成功都至关重要。Java 是一种以其多功能性和可移…...

Linux性能分析工具介绍(二)--内存、进程、磁盘、IO分析

目录 一、引言 二、Linux性能分析工具介绍 ------>2.1、进程 ------>2.2、内存 ------>2.3、磁盘 ------>2.4、IO 一、引言 本章从内存、IO、进程的角度,分析linux系统的性能 二、Linux性能分析工具介绍 2.1、进程 2.1.1、top top命令可以动态查看进程…...

海外热门地区/国家常见主体证件示例

海外热门地区/国家常见主体证件示例&#xff08;本页面内容较多&#xff0c;你可以通过CtrlF搜索&#xff09; Overseas Popular Areas / Countries Examples of Common certificates &#xff08;This page has more content, you can search by CtrlF&#xff09; 中国香港…...

【阵列信号处理】空间匹配滤波器、锥形/非锥形最佳波束成形器、样本矩阵反演 (SMI) 研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

使用MPU6050计算方向盘角度

我给你们作了榜样、叫你们照着我向你们所作的去作。 ——【约翰福音13:15】 1.前言 前段时间接到一个项目需求&#xff1a;使用现有的陀螺仪MPU6050实现计算当前车辆的方向盘角度。 2.需求分析 MPU6050可获取三轴角速度和三轴加速度&#xff0c;并通过算法可以获得横滚角、…...

区块链实验室(13) - 在PBFT中节点的度与其流量的特征

前面若干实验说明了PBFT的耗时、流量与度的特征&#xff0c;见 区块链实验室(10) - 实例说明PBFT的共识过程, 区块链实验室(11) - PBFT耗时与流量特征, 区块链实验室(12) - 网络拓扑对PBFT共识流量的影响 同样的实验方案&#xff0c;在100个节点构成的无标度网络中完成100次交…...

C++——文件操作

一、文本文件 C中输入输出是通过流对象进行操作&#xff0c;对于文件来说写文件就是将内容从程序输出到文件&#xff0c;需要用到写文件流ofstream&#xff1b;而读文件就是将内容从文件输入到程序&#xff0c;需要用到读文件流ifstream&#xff1b;这两个文件流类都包含在头文…...

channel通道笔记

channel通道笔记 介绍 语法 1.一般使用make创建channel(常用) c : make(chan datatype),datatype是数据类型 2.直接显示声明,创建的值为空,一般没有太大意义 var c chan datatype 三种定义写法: 既可以收数据又可以发数据:chan datatype只可以收数据:chan <- datatype只可…...

无涯教程-Lua - 面向对象

面向对象编程(OOP)是现代编程时代中使用最广泛的编程技术之一。 OOP的特征 类(Class) - 类是用于创建对象的可扩展模板。 对象(Objects) - 它是类的实例&#xff0c;并为其分配了单独的内存空间。 继承(Inheritance) - 这是一个概…...

Java中的IOUtils是什么?

Java中的IOUtils是一个工具类&#xff0c;用于简化文件和流的操作。它提供了一些常用的方法&#xff0c;如复制文件、读取文件、写入文件等。 下面是一个简单的示例&#xff0c;演示如何使用IOUtils来复制文件&#xff1a; import org.apache.commons.io.FileUtils; import j…...

电源板(220V转3.3V)调试问题总

目录 现象&#xff1a; 问题可能的影响&#xff1a; 排查过程&#xff1a; 1.测试EC3&#xff0c;C2都在6V左右&#xff0c; 2.怀疑变压器的问题。 2.怀疑原边反馈控制芯片的问题。 3.怀疑后级电路的问题。 现象&#xff1a; 电源板输出3.28V输出正常。 但是测试前级电压…...

【webpack】一些零碎的知识点记录:eslint配置、source-map配置、devServer配置

文章目录 前言eslint安装配置设置规则 devtool设置js.map文件使用模式解释文件说明建议方案 devServer安装配置 前言 有些知识点不知道咋归类&#xff0c;就先暂时放在同一个文章里了。这里只记录配置方式&#xff0c;配置的东西是什么就不过多解释了&#xff0c;因为一般需要…...

VUE之JWT前后端分离认证,学生管理系统

参考资料: SpringBoot搭建教程 SpringCloud搭建教程 JWT视频教程 JWT官网 Vue视频教程 JWT视频参考资料、VUE视频资料,及前后端demo 特别有参考价值的JWT博客1 特别有参考价值的JWT博客2 cookie、localstorage和sessionStorage的区别1 cookie、localstorage和sessi…...

Go学习第五天

Golang中面向对象类的表示与封装 package mainimport "fmt"// 如果类名首字母大写&#xff0c;表示其他包也能够访问 type Hero struct {// 如果类的属性首字母大写&#xff0c;表示该属性是对外能够访问的&#xff0c;否则的话只能够类的内部访问Name stringAd …...

在vue项目中封装WebSockets请求

在Vue项目中封装WebSocket请求包括以下步骤&#xff1a; 1. 安装WebSocket库&#xff1a;首先&#xff0c;导入WebSocket库&#xff0c;例如vue-native-websocket或socket.io-client。根据项目需求选择适当的库&#xff0c;并根据官方文档进行安装和配置。 2. 创建WebSocket服务…...

NumPy入门必做50道练习题,Python 提高教程之numpy,Python 学习者必须掌握

NumPy 从入门到完全入门的系统性练习题集&#xff0c;覆盖全部核心基础知识点&#xff0c;每道题均含&#xff1a; ✅ 题目编号与难度标识&#xff08;★☆☆ 到 ★★★&#xff09; ✅ 完整可运行代码&#xff08;Python 3.8&#xff0c;Clash Meta 风格 YAML 注释风格&#x…...

EasyAnimateV5图生视频实战:三步搞定你的第一个AI视频

EasyAnimateV5图生视频实战&#xff1a;三步搞定你的第一个AI视频 1. 准备工作与环境配置 1.1 了解EasyAnimateV5核心能力 EasyAnimateV5是一款专注于图生视频任务的AI模型&#xff0c;它能将静态图片转化为动态视频。与常见的文生视频模型不同&#xff0c;它特别擅长保持原…...

Seata+RocketMQ分布式事务实战:从理论到10万QPS的性能优化

1. 分布式事务的本质与挑战 第一次接触分布式事务时&#xff0c;我盯着电脑屏幕发呆了半小时——这玩意儿不就是把本地事务搬到多个服务上吗&#xff1f;但真正动手实现时&#xff0c;才发现自己太天真了。想象一下双十一的电商场景&#xff1a;用户下单要扣库存、生成订单、调…...

Proteus与Keil联调实战:给AT89C51跑马灯加上‘暂停’和‘变速’功能(代码深度解析)

AT89C51跑马灯进阶实战&#xff1a;状态机与中断优化技巧 在嵌入式系统开发中&#xff0c;跑马灯是最基础的入门项目之一。但很多学习者在掌握了基本流水灯效果后&#xff0c;往往止步于简单的循环控制&#xff0c;未能深入挖掘单片机编程的精髓。本文将带您突破基础功能限制&a…...

AI绘画新手必看:用LiuJuan Z-Image Generator,实时查看GPU占用防卡顿

AI绘画新手必看&#xff1a;用LiuJuan Z-Image Generator&#xff0c;实时查看GPU占用防卡顿 1. 为什么GPU监控对AI绘画如此重要&#xff1f; 想象一下这样的场景&#xff1a;你精心构思了一幅画面&#xff0c;输入了完美的提示词&#xff0c;满怀期待地点击生成按钮&#xf…...

从AEB到ACC:手把手拆解TTC和THW在L2级自动驾驶里的实战应用

从AEB到ACC&#xff1a;手把手拆解TTC和THW在L2级自动驾驶里的实战应用 当你的车辆在高速公路上以120km/h巡航时&#xff0c;前车突然亮起刹车灯——这个瞬间&#xff0c;车载电脑正在以每秒100次的频率计算两个关键数字&#xff1a;TTC&#xff08;碰撞时间&#xff09;决定是…...

网站社交媒体推广对SEO有什么作用_图片和视频如何优化以提高搜索引擎收录

网站社交媒体推广对SEO有什么作用 在当前数字化时代&#xff0c;网站的SEO&#xff08;搜索引擎优化&#xff09;已经成为任何希望提升在线存在感的企业和个人的首要任务。SEO并不仅仅是关于在网站上优化文本内容。如今&#xff0c;社交媒体推广也在这一过程中发挥着越来越重要…...

**向量数据库实战:用Python实现高效语义搜索与应用扩展**在当今人工智能飞速发展的背景下,**向量

向量数据库实战&#xff1a;用Python实现高效语义搜索与应用扩展 在当今人工智能飞速发展的背景下&#xff0c;向量数据库&#xff08;Vector Database&#xff09; 已成为构建智能应用的核心基础设施之一。它不仅能存储高维向量数据&#xff0c;还能快速进行近似最近邻&#…...

网站 SEO 检测报告如何与网站分析数据进行对比分析_网站 SEO 检测报告中的页面结构分析有什么用

网站 SEO 检测报告如何与网站分析数据进行对比分析 在当今的互联网时代&#xff0c;网站的成功与否往往取决于其在搜索引擎上的排名。因此&#xff0c;网站 SEO&#xff08;搜索引擎优化&#xff09;检测报告和网站分析数据的对比分析显得尤为重要。通过对比分析&#xff0c;可…...

OpenClaw技能开发入门:为Qwen3.5-9B定制图片分类插件

OpenClaw技能开发入门&#xff1a;为Qwen3.5-9B定制图片分类插件 1. 为什么需要开发图片分类技能 上周整理手机相册时&#xff0c;我对着3000多张杂乱无章的照片头疼不已——旅行风景、工作截图、宠物照片全都混在一起。手动分类不仅耗时费力&#xff0c;还经常因为主观判断不…...