Shell——文本处理工具

Linux——Shell编程_文本处理工具 ③只显示/etc/passwd的第一列和第七列,以逗号分割,且在所有行前面添加列明user,shell在最后一行添加“dahaige,/bin/zuishuai”.cut的工作就是“剪”,具体的说就是在文件中负责剪切数据用的,cut命令从文件的每一行剪切字节,字符和字段输出。②搜索passwd文件以root关键字开头的所有行,并输出改行的第1列和第7列,中间以“,”号分割。一个强大的文本分析工具,把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行分析处理。②切割cut.txt第一列。 阅读详情

cut

cut 的工作就是“剪”,具体的说就是在文件中负责剪切数据用的。
cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段输出。
其实可以看做grep是筛选行,cut是筛选列

基本用法

  • cut [选项参数] filename
  • 说明:默认分隔符是制表符

选项参数说明

在这里插入图片描述

vim cut.txt

dong shen
guan zhen
wo wo
lai lai
le le

练习

  1. 切割cut.txt 第一列
cut -d " " -f 1 cut.txt

在这里插入图片描述
2. 切割cut.txt 第二、三列

cut -d " " -f 2,3 cut.txt

在这里插入图片描述
3. 在cut.txt 文件中切割出guan

cat cut.txt |grep guan 

在这里插入图片描述

 cat cut.txt |grep guan | cut -d ' ' -f 1

在这里插入图片描述
4. 选取系统PATH 变量值,第2 个“:”开始后的所有路径:

 ifconfig ens33

在这里插入图片描述

# 通过grep筛选出ip行
ifconfig ens33 |grep netmask

在这里插入图片描述

# 通过cut选出ip,从最开始空格开始数,是第十个字符
ifconfig ens33 |grep netmask |cut -d " " -f 10

在这里插入图片描述

awk

一个强大的文本分析工具,把文件逐行的读入,以空格为默认分隔符将每行切片,切开
的部分再进行分析处理。

基本用法

  • awk [选项参数] ‘/pattern1/{action1} /pattern2/{action2}...’ filename
  • pattern:表示awk 在数据中查找的内容,就是匹配模式
  • action:在找到匹配内容时所执行的一系列命令

选项参数说明

在这里插入图片描述

cp /etc/passwd ./
  1. 搜索passwd 文件以root 关键字开头的所有行,并输出该行的第7 列。
# cut实现
cat passwd |grep ^root  |cut -d ":" -f 7

/bin/bash

 cat passwd |awk -F : '/^root/{print $7}'

/bin/bash

  1. 搜索passwd 文件以root 关键字开头的所有行,并输出该行的第1 列和第7 列,中间以“,”号分割。
cat passwd |awk -F : '/^root/{print $1","$7}'

root,/bin/bash

注意:只有匹配了pattern 的行才会执行action。

  1. 只显示/etc/passwd 的第一列和第七列,以逗号分割,且在所有行前面添加列名user,shell 在最后一行添加"this is the end of the file"。
cat passwd |awk -F : 'BEGIN{print "User,shell"} {print $1","$7} END{print "end of the file"}'

在这里插入图片描述
在这里插入图片描述
注意:BEGIN 在所有数据读取行之前执行;END 在所有数据执行之后执行。

  1. 将passwd 文件中的用户id 增加数值1 并输出
cat passwd |awk -F : '{print $3}'

在这里插入图片描述

# 可以直接+1
cat passwd |awk -F : '{print $3+1}'

在这里插入图片描述

# 也可以通过变量
cat passwd |awk -v i=1 -F : '{print $3+i}'

在这里插入图片描述

#增加了额外的字符
cat passwd |awk -v i=1 -F : '{print"用户ID+1:" $3+i}'

在这里插入图片描述

awk 的内置变量

在这里插入图片描述

  1. 统计passwd 文件名,每行的行号,每行的列数
# 文件名无法输出,是因为通过管道方式实现的
cat passwd |awk -F : '{print"文件名:"FILENAME "行号:"NR "列数:"NF  }'

在这里插入图片描述

# 现在文件名就能正常实现了
awk -F : '{print"文件名:"FILENAME "行号:"NR "列数:"NF  }' passwd

在这里插入图片描述

# 进行了分割
awk -F : '{print"文件名:"FILENAME ",行号:"NR ",列数:"NF  }' passwd 

在这里插入图片描述
2. 查询ifconfig 命令输出结果中的空行所在的行号

# grep -n表示显示行号 ^$表示空行
ifconfig |grep -n ^$

在这里插入图片描述

 ifconfig |awk '/^$/{print NR}'

9
18
26
3. 切割IP

 ifconfig |grep mask

在这里插入图片描述

 ifconfig |grep netmask |cut -d " " -f 10

在这里插入图片描述

# awk 会从第一个非空字符开始计
 ifconfig |awk -F " " '/mask/{print$2}'

在这里插入图片描述

shell中的文本处理工具(grep,sed,awk) shell中的文本处理工具一、grep1、grep的格式2、grep字符数量匹配规则3、示例二、sed1、sed的格式2、对字符的处理3、字符替换4、示例三、awk1、awk的格式2、示例 一、grep 文本搜索工具,可以使用正则表达式搜索文本,把匹配的行打印出来 grep支持正则表达式 egrep支持扩展的正则表达式 grep -E= egrep 1、grep的格式 grep 匹配条件 处理文件 -i 忽略大小写 -E “\<root" root字符之前不能有字符 阅读详情

相关推荐

ubuntu安装glibc

VSCode 在ubuntu下调试无法打开libc-start.c raise.c等1. 安装glibc2. launch.json中添加路径映射3. 调试 1. 安装glibc apt install glibc-source cd /usr/src/glibc/ sudo tar -xvf glibc-[VERSION].tar.xz 2. launch.json中添加路径映射 "sourceFileMap": { "/build/glibc-S7xCS9": "/usr/src/glib

wq_0708的博客 3万+

shell之常用工具

可以修改对应的字符,按照字符对应一一修改,如果有重复的字符,它会按照最后一个字符对应的修改字符进行替换,如果对应的字符不够时,它会将修改的最后一个字符进替换。注意: 是连续的行。还可以选择按照哪一列进行排序,需要先定义分割符(-t),然后根据分割符去选取对应的列(-k),最后进行排序。还可以进行去重(-s),但是去重的字符必须是连续在一起的两个字符(会保留其中一个),不然无法去重成功。可以按照字符(-c)按照字节(-b)或者根据分割符(-d)来选取要截取的列(-f)。

joker_Kang的博客 2927

[南大ICS-PA2]PA2 - 简单复杂的机器:冯诺依曼计算机系统

mips32和riscv32的指令长度只有32位, 因此它们不能像x86那样, 把C代码中的32位常数直接编码到一条指令中. 思考一下, mips32和riscv32应该如何解决这个问题?加载立即数到寄存器的高20位,然后便可以是哟给你标准的立即指令来创建32位常量。在程序分析领域中,静态指令是指程序代码中的指令,动态指令是指程序运行过程中的指令,例如对于一下指令序列。位域,在小端机器上,先定义的在每个字节的低位,后定义的在每个字节的高位。,这是处理非法指令的宏,其定义在。指令,而下一条动态指令则是。

qq_42474104的博客 928

【Linux】Shell 脚本实战:一线工作必备的18个高效工具

假设服务器环境为 lnmp,近期访问经常出现 502 现象,且 502 错误在重启 php-fpm 服务后消失,因此需要编写监控脚本,一旦出现 502,则自动重启 php-fpm 服务。Expect是一个自动交互式应用程序的工具,如telnet,ftp,passwd等。加个死循环,如果IP可用就退出,不可用提示继续输入,并使用awk判断。应用场景:希望将执行结果或者位置参数赋值给变量,以便后续使用。方法1:EOF标准输出作为expect标准输入。方法1:根据访问日志(Nginx为例)

A1_3_9_7的博客 3553

5分钟搞定kkFileView 4.4.0 Docker部署:小白也能上手的完整配置流程

本文提供了一份针对kkFileView 4.4.0版本的Docker部署完整指南。通过使用预构建的Docker镜像,即使是新手也能在5分钟内完成文件预览服务的搭建,涵盖从环境准备、镜像拉取、容器启动到服务验证的全流程,并分享了进阶配置与生产环境优化建议。

mango的博客 526

rk3326 MIPI休眠唤醒黑屏有背光问题

** 1.问题现象: ** **【开机起来】**开机起来可以正常显示 **【按power按键休眠】**第二次按下Power按键进入休眠,隔10s,再按Power按键唤醒。 **【出现结果】**屏幕黑屏有背光,并提示drm time out错 **【lcd信息】**lcd为480*800 2lane的mipi **【复现概率】**第二次按下休眠唤醒必然复现 【具体错误log如下】 //第一次休眠的log// [ 54.858511] dw-mipi-dsi ff450000.dsi: final DSI-

Ian22l的博客 3944

SHELL工具推荐

随着个人使用还会继续更新,目前就只有两款。 1.Xshell 业界较常见的一款经典的shell命令行软件。 界面比较简洁,命令好像全是单色。有开源的免费版本可以下载。 2.MobaXterm 界面易读性高很多,对于warning、fail、no等告警会有红色提示。不同类别的数据也会有颜色区分,视觉真心很友好。 但是ftp其慢,大约是win10系统cmd命令行的1/3的速度,而且容易死机无响应。 ...

qq_42674140的博客 1万+

4×V100部署Qwen3.8-Flash-Next:vLLM/GGUF实战

大模型本地部署的核心,是把参数量、量化精度、显存容量和推理框架放在同一张账本里算清楚。MoE 模型总参数量大但激活参数少,解码阶段更受显存带宽与 KV Cache 限制;通过 INT4/AWQ 或 GGUF 等 4-bit 量化可显著压缩权重占用,再结合 vLLM 张量并行、llama.cpp 分层切分提升多卡利用率。其技术价值在于让 V100 这类老架构 GPU 也能承载百亿级参数模型的私有化推理,并服务于 RAG 知识库、工作流 API、批量生成等场景。这次围绕 4×V100 32G 部署 Qwen3.

weixin_29061425的博客 347

shell脚本工具

字符集1:指定要转换或删除的原字符集。当执行转换操作时,必须使用参数"字符集2"制定转化的目标字符集。但执行删除操作时,不需要参数字符2。-c:保留字符集1 的字符,其他的字符(包括换行符 \n)用 字符集2 替换。–output-delimiter | 更改输出内容的分隔符。–complement | 此选项用于排除所指定的字段。语法格式:sort 【选项】 参数。语法格式:uniq 【选项】 参数。字符集2:指定要转换成的目标字符集。-d:删除所有属于字符集1的字符。

weixin_60917414的博客 2168

LeRobot 入门教程(一)软件环境、部署流程及摄像头配置

🤖 LeRobot:开源机器人学习平台 摘要:LeRobot是一个基于PyTorch的开源机器人学习平台,提供模型、数据集和工具,旨在降低机器人技术门槛。平台包含经过验证的模仿学习和强化学习方法,并提供预训练模型、人类演示数据集及模拟环境。安装需从源码获取,支持Python 3.10环境,可选扩展包括仿真环境(如gym-aloha)、电机控制(Dynamixel/Feetech SDK)和实验跟踪(Weights & Biases)。该平台托管在HuggingFace,并设有社区Discord频道

2506_90492529的博客 3417

手机开发实战58——小区广播介绍2

业务 针对小区广播短消息的特点,可以提供一些基于目前短消息不能或不适合提供的服务: 1. 显示网络服务基站名称:用户可以随时了解手机登记在哪个基站下,特别是在边界交叉覆盖区域,用户可以清楚的知道通话建立在哪个基站下,在用户投诉和故障描述中也会有所帮助; 2. 提供用户问候信息:可以在覆盖机场、车站等地区的基站广播一些用户问候语或一些企业形象广告语; 3. 充分利用小区广播地

xjbclz的专栏 772

shell常用工具与脚本

【代码】shell常用工具与脚本。

pxyxyxy的博客 3056

飞腾平台(FT2000/4 D2000/8)配置GPIO引脚

飞腾平台配置CPU的引脚为GPIO工作模式的方式有永久型和暂时型: - 永久型是通过UEFI中的MmioWrite32函数来实现的,该方法可以在UEFI阶段就对复用引脚的工作模式配置为GPIO,并且在进入操作系统后仍然不会发生便会; - 临时型是通过rw工具,在系统下手动修改复用引脚的工作模式,该方法在系统重启后会失效,所以是暂时型的。

qq_30135687的博客 5614

全网最全的 Linux Shell 文本处理工具!

今天给大家分享日常工作中常用到的,可以说是史上最全了,大家掌握住这些工具,可以在日常运维工作中起到事半功倍的作用!本文将介绍Linux下使用Shell处理文本时最常用的工具:提供的例子和参数都是最常用和最为实用的;对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧;01 find 文件查找1 查找txt和pdf文件2 正则方式查找.txt和pdf-iregex:忽略大小写的正则3 否定参数查找所有非txt文本4 指定搜索深度。

logic1001的博客 1571

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

盘点史上最全的 Linux Shell 文本处理工具!

今天给大家分享日常工作中常用到的,可以说是史上最全了,大家掌握住这些工具,可以在日常运维工作中起到事半功倍的作用!本文将介绍Linux下使用Shell处理文本时最常用的工具:提供的例子和参数都是最常用和最为实用的;对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧;01 find 文件查找1 查找txt和pdf文件2 正则方式查找.txt和pdf-iregex:忽略大小写的正则3 否定参数查找所有非txt文本4 指定搜索深度。

bdfcfff77fa的博客 763

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

shell中的文本处理工具

shell中的文本处理工具一级目录 文本处理三剑客 一级目录

weixin_44717560的博客 655

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Linux Shell 文本处理工具集锦

本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk;提供的例子...

java面试笔试 421

shell脚本和文本处理工具

bash 帮你定义好了 拿来用就可以了$*:表示所有位置参数的内容看成一个整体返回 返回所有$@:表示所有位置参数的内容分割成n份,每份作为一个独立的个体返回 返回所有:表示前一条命令执行后的返回状态,返回值为 0 表示执行正确,返回任何非 0值均表示执行出现异常$#:表示命令行中位置参数的总个数$0:表示当前执行的脚本或程序的名称 当前脚本的名字$$:当前bash的进程id: 后台任务最后一个id。

cc2022928的博客 905

Linux文本处理工具和Shell编程基础

变量的生效范围等标准划分变量类型普通变量:生效范围为当前shell进程;对当前shell之外的其它shell进程,包括当前shell的子shell 进程均无效环境变量:生效范围为当前shell进程及其子进程本地变量:生效范围为当前shell进程中某代码片断,通常指函数value 可以是以下多种形式name='root' #直接字串name="$USER" #变量引用name=`COMMAND` #命令引用name=$(COMMAND) #命令引用。

qq_40780313的博客 2692

史上最全的 Linux Shell 文本处理工具集锦

史上最全的 Linux Shell 文本处理工具集锦

qq_41490913的博客 225

Linux Shell-文本处理工具集锦

来自:大 CC 链接:www.cnblogs.com/me15/p/3427319.html 本文将介绍 Linux 下使用 Shell 处理文本时最常用的工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用的; 对 shell 脚本使用的原则是命令单行书写,尽量不要超过 2 行; 如果有更为复杂的任务需求,还是考虑 python 吧; 01 find 文件查找 1 查找 txt 和 pdf 文件 find .

嘻哈熊的专栏 319

shell正则+文本处理工具

字符区间示例。

m0_74039531的博客 38

shell编程中的函数与文本处理工具

Shell函数。通过函数的定义和使用,可以简化脚本的复杂性,提高代码的可读性和可维护性1.代码重用:可以在脚本的多个地方调用同一函数,2.简化复杂性:通过将复杂的操作分解为多个函数,使得。3.参数化:函数可以接受参数,。1. 定义和调用:函数可以在脚本中定义并在需要时调用。2. 参数传递:函数可以接受输入参数,使用$1, $2, ..., $N来引用。3. 返回值:通过return语句返回状态码,或通过echo输出结果。4. 作用域:在函数内定义的变量默认为局部变量,外部无法访问。定义函数。

qq_56918998的博客 643

文本处理工具及shell入门

文本工具及shell

weixin_50619719的博客 494
上一篇: Shell——正则表达式入门
下一篇: shell——综合练习:发送消息
chairon
博客等级 码龄7年 964粉丝 172原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值