【Linux命令200例】cut强大的文本处理工具

news2024/11/22 14:29:55

在这里插入图片描述

🏆作者简介,黑夜开发者,全栈领域新星创作者✌,2023年6月csdn上海赛道top4。
🏆本文已收录于专栏:Linux命令大全。
🏆本专栏我们会通过具体的系统的命令讲解加上鲜活的实操案例对各个命令进行深入讲解。欢迎提前锁定关注。

文章目录

  • 一、简介
  • 二、基本语法
  • 三、常用参数
  • 四、例子演示
    • 4.1 提取指定列
    • 4.2 提取指定字段
    • 4.3 取反操作
    • 4.4 指定输出分隔符
  • 五、总结


一、简介

cut命令是Linux系统中常用的文本处理工具之一,用于选取文件中特定字段(列)或字符,以便进行后续操作。使用cut命令可以快速提取感兴趣的信息,节省时间和精力。

二、基本语法

cut命令的基本语法如下:

cut [选项] 文件名

三、常用参数

cut命令有许多选项可供选择,常用的参数如下:

  • -c list:指定字符位置,提取指定列的内容;
  • -f list:指定字段位置,提取指定字段的内容;
  • -d delimiter:指定字段分隔符,默认为制表符;
  • --complement:取反,输出除指定列或字段外的内容;
  • --output-delimiter:指定输出分隔符。

四、例子演示

为了更好地理解cut命令的用法,下面将结合具体的例子进行演示。

4.1 提取指定列

假设我们有一个名为data.txt的文件,内容如下:

1 Tom 18 Male
2 Lucy 20 Female
3 John 22 Male

现在我们想要提取每行的第二列,可以使用以下命令:

cut -f 2 -d " " data.txt

执行上述命令后,我们将得到以下输出:

Tom
Lucy
John

这样,我们就成功地提取了每行的第二列内容。

4.2 提取指定字段

现在假设我们有一个名为data.csv的文件,内容如下:

1, Tom, 18, Male
2, Lucy, 20, Female
3, John, 22, Male

我们想要提取每行的第一、第三和第四个字段,可以使用以下命令:

cut -f 1,3,4 -d "," data.csv

运行以上命令后,我们将得到以下输出:

1, 18, Male
2, 20, Female
3, 22, Male

这样,我们就成功地提取了每行的指定字段。

4.3 取反操作

有时候,我们可能需要提取除指定列或字段外的内容。为了实现这一需求,我们可以使用--complement参数。假设我们有一个名为data.txt的文件,内容如下:

1 Tom 18 Male
2 Lucy 20 Female
3 John 22 Male

我们想要提取每行除第二列外的内容,可以使用以下命令:

cut -f 2 --complement -d " " data.txt

运行上述命令后,我们将得到以下输出:

1 18 Male
2 20 Female
3 22 Male

这样,我们就成功地提取了每行除第二列外的内容。

4.4 指定输出分隔符

默认情况下,cut命令使用制表符作为输出分隔符。如果我们想要使用其他分隔符,可以使用--output-delimiter参数。假设我们有一个名为data.txt的文件,内容如下:

1 Tom 18 Male
2 Lucy 20 Female
3 John 22 Male

现在我们想要提取每行的第一列,并且将逗号作为输出分隔符,可以使用以下命令:

cut -f 1 --output-delimiter=',' data.txt

执行上述命令后,我们将得到以下输出:

1,
2,
3,

这样,我们就成功地提取了每行的第一列,并使用逗号作为输出分隔符。

五、总结

本文介绍了Linux系统中的cut命令,包括其基本语法、常用参数和使用示例。通过cut命令,我们可以方便地提取文件中特定字段或字符,实现文本处理和分析的需求。希望本文能对您在Linux系统中使用cut命令提供一些帮助。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于Spring的bean的相关注解以及其简单使用方法

一、前置工作 第一步&#xff1a;创建一个maven项目 第二步&#xff1a;在resource中创建一个名字叫做spring-config.xml的文件&#xff0c;并把以下代码复制粘贴 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.sprin…

java+springboot+mysql员工宿舍管理系统

项目介绍&#xff1a; 使用javaspringbootmysql开发的员工宿舍管理系统&#xff0c;系统包含超级管理员、管理员、员工角色&#xff0c;功能如下&#xff1a; 超级管理员&#xff1a;管理员管理&#xff1b;楼栋管理&#xff1b;宿舍管理&#xff1b;员工管理&#xff08;分配…

IntelliJ IDEA 2023.2 正式发布,彻底弃用Struts2,不再支持Win7

点击“终码一生”&#xff0c;关注&#xff0c;置顶公众号 每日技术干货&#xff0c;第一时间送达&#xff01; 1、主要更新 IntelliJ IDEA 2023.2已经到来&#xff01;此版本为IDE带来了大量令人兴奋的功能和有价值的改进。下面是本次的主要更新&#xff1a; IntelliJ IDEA 2…

【Java】智慧校园家校互通小程序源码

智慧校园家校互通小程序源码包含电子班牌系统考勤功能&#xff0c;以云服务器为基础&#xff0c;实现大数据和资源共享。是一款全功能智慧校园管理平台系统&#xff0c;融合了多媒体信息发布、家校互通、物联控制、教务管理、日常办公等一系列应用&#xff0c;是校园管理的现代…

如何在Linux系统上安装cpolar内网穿透

文章目录 如何在Linux系统上安装cpolar内网穿透 如何在Linux系统上安装cpolar内网穿透 cpolar作为一款体积小巧却功能强大的内网穿透软件&#xff0c;不仅能够在多种环境和应用场景中发挥巨大作用&#xff0c;还能适应多种操作系统&#xff0c;应用最为广泛的Windows、Mac OS系…

软件外包开发的流程图工具

软件开发过程中需要画流程图&#xff0c;可以更清楚的表达软件业务流程&#xff0c;减少在开发过程中的业务理解偏差&#xff0c;因此在软件开发过程中流程图工具是必不可少的软件管理工具。今天和大家分享常见的一些软件流程图工具&#xff0c;每款工具都有其自身的特色&#…

NAT网络地址转换(红茶三杯CCNA)

私有IPv4地址空间 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0-192.168.255.255 问题&#x1f4a1;&#xff1f; 问问题NAT实验

el-table数据处理

在写表格时遇到&#xff0c;后端返回的数据是对象&#xff0c;并且缺少字段 1.每一条数据加上 一个字段 2.将对象转成数组 以下是数据 {"groupA": {"groupName": null,"orgName": null,"orgId": null,"allPeoper": &quo…

【实践篇】推荐算法PaaS化探索与实践 | 京东云技术团队

作者&#xff1a;京东零售 崔宁 1. 背景说明 目前&#xff0c;推荐算法部支持了主站、企业业务、全渠道等20业务线的900推荐场景&#xff0c;通过梳理大促运营、各垂直业务线推荐场景的共性需求&#xff0c;对现有推荐算法能力进行沉淀和积累&#xff0c;并通过算法PaaS化打造…

建木-自动化部署工具-安装文档

阿丹&#xff1a; 在管理微服务在开发环境以及线上环境的时候。发现每次都要手动的去进行更新迭代。但是在项目的管理中使用建木就可以很简单流程化的进行管理项目。 建木官网如下&#xff1a; 建木 下载docker-compose.yml wget https://gitee.com/jianmu-dev/jianmu-deplo…

力扣算法数学类—剑指 Offer 43. 1~n 整数中 1 出现的次数

目录 剑指 Offer 43. 1&#xff5e;n 整数中 1 出现的次数 题解&#xff1a; 代码&#xff1a; 结果&#xff1a; 输入一个整数 n &#xff0c;求1&#xff5e;n这n个整数的十进制表示中1出现的次数。 例如&#xff0c;输入12&#xff0c;1&#xff5e;12这些整数中包含1 的…

【C++杂货铺】模板(文末有彩蛋哟)

文章目录 一、泛型编程二、函数模板2.1 函数模板的原理2.2 函数模板的实例化2.3 模板参数的匹配原则 三、类模板四、非类型模板参数五、模板的特化5.1 函数模板特化5.2 类模板特化 六、模板分离编译七、模板总结好书推荐&#x1f381;彩蛋 一、泛型编程 &#x1f4d6;实现一个…

JDK17的下载安装与配置(详细教程)

1.搜索JDK的官方网址 https://www.oracle.com/java/technologies/downloads/#jdk17 2.切换到window系统&#xff0c;根据自己电脑的系统进行切换。然后点击下载 3.下载完成后移动你指定的文件夹并解压(这里放在了d盘目录下) 4.配置环境变量。打开我的电脑->点击属->找到…

「分享」Word文档被锁定无法编辑怎么办?4种方法解决

有没有遇到这种情况&#xff1f;打开Word文档后&#xff0c;发现文档被锁定了&#xff0c;无法输入内容&#xff0c;也无法修改&#xff0c;这很大可能是Word文档被设置了“限制编辑”。 如果Word文档被设置了“限制编辑”&#xff0c;而我们又需要编辑文档&#xff0c;可以用…

Python简要复习

西电Python程序设计复习 Python基础知识 python的特点 兼具编译型和解释型特性&#xff0c;兼顾过程式、函数式和面向对象编程范式的通用编程语言 解释型语言无需像编译型需要一次性的编译成机器码&#xff0c;然后运行&#xff0c;而是由名叫解释器的程序动态的将源代码逐…

Docker部署出现的问题

记录第一次使用Docker今天需要使用DockerFile文件在x86环境下部署镜像&#xff0c;给了我下面四个文件&#xff0c;让我生成首行的文件。 直接创建镜像报错 执行创造镜像命令 docker build -t wondersoft/ubuntu_scan_engine:latest .报错信息 报错原因&#xff1a; FROM …

数制系统——二、十、十六进制的相互转换

目录 1 二进制数制系统 1.1 二进制和 IPv4 地址 1.2 二进制位置记法 1.3 将二进制数转换为十进制数 1.4 十进制到二进制的转换 1.4.1 二进制和十进制互相转换游戏链接 1.5 Pv4 地址 2 十六进制数制系统 2.1 十六进制和 IPv6 地址 2.2 十进制到十六进制的转换 2.3 十…

【linux 结束pts/1踢人踢除另一个终端】

centos7上误执行了个命令&#xff0c;导致一直刷屏&#xff0c;强制CTRLC无法正常退出&#xff0c;一直出现如下&#xff1a; 网上搜索通过ctrlD&#xff0c;q均无法正常退出&#xff0c; 不想强行关掉&#xff0c;通过&#xff1a;who命令查看均用户&#xff1a; who mshns…

RocketMQ 行业分享

5.0的架构发生了重大调整&#xff0c;添加了一层rocketmq-proxy,可以通过grpc的方式接入。 参考 https://juejin.cn/post/7199413150973984827

plt绘制渐变颜色填充折线、曲线图

问题: 一般我们在绘制一些曲线或者折线图的时候需要进行颜色填充。例如 import matplotlib.pyplot as plt import numpy as npdata = np.loadtxt("0.txt").T x = data[0] y = data[1]fig, axs = plt.subplots(figsize=(4, 3)) axs.plot(x, y)# 设置xy轴范围 plt.x…