Linux文本处理指令汇总
Linux文本处理命令主要包括以下几种:
- grep:用于在文件中搜索包含指定字符串的行。
[root@hanyw-bash-python ~]# grep 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
- awk:用于在文件中进行模式扫描和处理,可以根据指定的模式对文件进行处理。
[root@hanyw-bash-python ~]# awk '/root/' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
- sed:用于流编辑器,可以对文本文件进行替换、删除、插入等操作。
[root@hanyw-bash-python ~]# sed -n /root/p /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@hanyw-bash-python ~]# sed -n '/root/p' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@hanyw-bash-python ~]# sed -n "/root/p" /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@hanyw-bash-python ~]# sed -n '''/root/p''' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@hanyw-bash-python ~]# sed -n """/root/p""" /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
- cut:用于按列截取文件内容。
[root@hanyw-bash-python ~]# cut -d: -f1 /etc/passwd | head
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
- sort:用于对文本文件进行排序。
[root@hanyw-bash-python ~]# sort /etc/passwd | head
adm:x:3:4:adm:/var/adm:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
boss:x:1002:1002:两组老板可查账号:/home/boss:/sbin/nologin
chrony:x:997:995:chrony system user:/var/lib/chrony:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
flatpak:x:987:984:User for flatpak system helper:/:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
geoclue:x:989:986:User for geoclue:/var/lib/geoclue:/sbin/nologin
- uniq:用于去除重复的行。
[root@hanyw-bash-python ~]# sort /etc/passwd | uniq -c | sort -rn | head1 zabbix:x:992:992:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin1 yfyg:x:1000:1000:公司研发组研发员工账号:/home/yfyg:/sbin/nologin1 xcyg:x:1001:1001:公司宣传组宣传员工账号:/home/xcyg:/sbin/nologin1 www:x:1003:1003::/home/www:/sbin/nologin1 tss:x:59:59:Account used for TPM access:/:/sbin/nologin1 systemd-oom:x:993:993:systemd Userspace OOM Killer:/:/usr/sbin/nologin1 systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin1 sync:x:5:0:sync:/sbin:/bin/sync1 sssd:x:998:996:User for sssd:/:/sbin/nologin1 sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/usr/sbin/nologin
- wc:用于统计文件中的行数、字数和字节数。
[root@hanyw-bash-python ~]# wc < /etc/passwd32 68 1717
- tr:用于字符转换或删除字符。
tr命令用于字符转换和删除。以下是一些例子:
将小写字母转换为大写字母:
[root@hanyw-bash-python ~]# echo "hello world" | tr 'a-z' 'A-Z'
HELLO WORLD
删除字符串中的空格:
[root@hanyw-bash-python ~]# echo "hello world" | tr -d ' '
helloworld
将数字转换为对应的英文字母:
[root@hanyw-bash-python ~]# echo "1234567890" | tr '1234567890' 'abcdefghij'
abcdefghij
将多个字符替换为一个字符:
[root@hanyw-bash-python ~]# echo "hello world" | tr 'My name is hanyw' '*'
**llo**orld
- paste:用于合并文件的每行。
[root@hanyw-bash-python ~]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
[root@hanyw-bash-python ~]# head /etc/shadow
root:$6$m04vxfuOCpe/BEMs$hMLXhWnxjKLXsuN2dq97qfOiExucrI9N7OGWyAQajsA2AZmVTvc7haF9muP2YPioAGxh5vWuKX8skfWCEOp/G1::0:99999:7:::
bin:*:19347:0:99999:7:::
daemon:*:19347:0:99999:7:::
adm:*:19347:0:99999:7:::
lp:*:19347:0:99999:7:::
sync:*:19347:0:99999:7:::
shutdown:*:19347:0:99999:7:::
halt:*:19347:0:99999:7:::
mail:*:19347:0:99999:7:::
operator:*:19347:0:99999:7:::
[root@hanyw-bash-python ~]# paste -d':' /etc/passwd /etc/shadow > /opt/passwd-shadow.txt
[root@hanyw-bash-python ~]# cat /opt/passwd-shadow.txt
root:x:0:0:root:/root:/bin/bash:root:$6$m04vxfuOCpe/BEMs$hMLXhWnxjKLXsuN2dq97qfOiExucrI9N7OGWyAQajsA2AZmVTvc7haF9muP2YPioAGxh5vWuKX8skfWCEOp/G1::0:99999:7:::
bin:x:1:1:bin:/bin:/sbin/nologin:bin:*:19347:0:99999:7:::
daemon:x:2:2:daemon:/sbin:/sbin/nologin:daemon:*:19347:0:99999:7:::
adm:x:3:4:adm:/var/adm:/sbin/nologin:adm:*:19347:0:99999:7:::
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin:lp:*:19347:0:99999:7:::
sync:x:5:0:sync:/sbin:/bin/sync:sync:*:19347:0:99999:7:::
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown:shutdown:*:19347:0:99999:7:::
halt:x:7:0:halt:/sbin:/sbin/halt:halt:*:19347:0:99999:7:::
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin:mail:*:19347:0:99999:7:::
operator:x:11:0:operator:/root:/sbin/nologin:operator:*:19347:0:99999:7:::
games:x:12:100:games:/usr/games:/sbin/nologin:games:*:19347:0:99999:7:::
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin:ftp:*:19347:0:99999:7:::
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin:nobody:*:19347:0:99999:7:::
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin:systemd-coredump:!!:19687::::::
dbus:x:81:81:System message bus:/:/sbin/nologin:dbus:!!:19687::::::
tss:x:59:59:Account used for TPM access:/:/sbin/nologin:tss:!!:19687::::::
sssd:x:998:996:User for sssd:/:/sbin/nologin:sssd:!!:19687::::::
chrony:x:997:995:chrony system user:/var/lib/chrony:/sbin/nologin:chrony:!!:19687::::::
sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/usr/sbin/nologin:sshd:!!:19687::::::
systemd-oom:x:993:993:systemd Userspace OOM Killer:/:/usr/sbin/nologin:systemd-oom:!*:19687::::::
zabbix:x:992:992:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin:zabbix:!!:19690::::::
nginx:x:991:991::/home/nginx:/sbin/nologin:nginx:!!:19694::::::
yfyg:x:1000:1000:公司研发组研发员工账号:/home/yfyg:/sbin/nologin:yfyg:!!:19726:0:99999:7:::
xcyg:x:1001:1001:公司宣传组宣传员工账号:/home/xcyg:/sbin/nologin:xcyg:!!:19726:0:99999:7:::
boss:x:1002:1002:两组老板可查账号:/home/boss:/sbin/nologin:boss:!!:19726:0:99999:7:::
polkitd:x:990:987:User for polkitd:/:/sbin/nologin:polkitd:!!:19730::::::
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin:rtkit:!!:19730::::::
geoclue:x:989:986:User for geoclue:/var/lib/geoclue:/sbin/nologin:geoclue:!!:19730::::::
pipewire:x:988:985:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin:pipewire:!!:19730::::::
flatpak:x:987:984:User for flatpak system helper:/:/sbin/nologin:flatpak:!!:19730::::::
pesign:x:986:983:Group for the pesign signing daemon:/run/pesign:/sbin/nologin:pesign:!!:19730::::::
www:x:1003:1003::/home/www:/sbin/nologin:www:!!:19731:0:99999:7:::
- tail:用于显示文件末尾的内容。
[root@hanyw-bash-python ~]# tail /etc/passwd
yfyg:x:1000:1000:公司研发组研发员工账号:/home/yfyg:/sbin/nologin
xcyg:x:1001:1001:公司宣传组宣传员工账号:/home/xcyg:/sbin/nologin
boss:x:1002:1002:两组老板可查账号:/home/boss:/sbin/nologin
polkitd:x:990:987:User for polkitd:/:/sbin/nologin
rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
geoclue:x:989:986:User for geoclue:/var/lib/geoclue:/sbin/nologin
pipewire:x:988:985:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin
flatpak:x:987:984:User for flatpak system helper:/:/sbin/nologin
pesign:x:986:983:Group for the pesign signing daemon:/run/pesign:/sbin/nologin
www:x:1003:1003::/home/www:/sbin/nologin
相关文章:
Linux文本处理指令汇总
Linux文本处理命令主要包括以下几种: grep:用于在文件中搜索包含指定字符串的行。 [roothanyw-bash-python ~]# grep root /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologinawk:用于在文件中进行…...
Prompt Engineering
目录 什么是提示工程 什么是提示工程 在当今人工智能领域,提问大型语言模型(Large Language Models,LLM)已经成为一种常见的实践,但如何向这些模型提出问题,或者更准确地说,如何引导它们产生期…...
Ansible剧本playbooks
playbooks概述 Ansible剧本(playbook)是用于配置、部署和管理被控节点的一种描述文件。通过编写详细的剧本描述和执行其中的任务(tasks),可以使远程主机达到预期的状态。剧本由一个或多个"play"组成的列表构…...
Excel·VBA时间范围筛选及批量删除整行
看到一个帖子《excel吧-筛选开始时间,结束时间范围内的所有记录》,根据条件表中的开始时间和结束时间构成的时间范围,对数据表中的开始时间和结束时间范围内的数据进行筛选 目录 批量删除整行,整体删除批量删除整行,分…...
Map转成String,String 转换成Map
一、使用场景 把一个map转换成json字符串后存放在Redis中,然后在redis中取出json字符串,再把字符串转变成原来的Map 二、具体实现 1.1 Map转成String 这里使用是阿里巴巴fastjson Map<String, Object> reportData dssDashboardService.getRep…...
分享一个剧本(改编自我)
不知道是不是错过了一个喜欢我的女孩,一个很不错的女孩,当初没勇气表白。去年表白过但女孩表示仅想是永远的朋友,今天翻他的朋友圈发现2021年我生日时,她分享了这首歌曲,还评论Best wishes!!!,高中有一次我…...
结合Tensuns管理prometheus的blackbox与告警设置
场景说明: 因为业务服务器已经完成了三级等保,禁止在业务服务器上部署任何应用,遂选择一台新的服务器部署prometheus,采用blackbox_exporter监控业务服务器的端口与域名状态。 Tensuns项目介绍 https://github.com/starsliao/T…...
printf实现
这是我看之前公司的旧代码摘录下来的, 感觉写的还算可以吧, void printfsend(UART_TypeDef UARTx, uint8_t *buf, int len) {uint8_t printbuf[256];for (int i 0; i < len; i){printbuf[i] buf[i];}#ifdef ENABLE_PERIAL_TESTif (uart_printf_switch_gloab){UART_Send…...
Elasticsearch 中的 term、terms 和 match 查询
目录 term 查询 terms 查询 match 查询 注意事项 结论 Elasticsearch 提供了多种查询类型,用于不同的搜索需求。term、terms 和 match 是其中最常用的一些查询类型。下面分别介绍每种查询类型的用法和特点。 term 查询 term 查询用于精确值匹配。它通常用于关…...
美易官方:开盘:美股高开科技股领涨 标普指数创盘中新高
**开盘:美股高开科技股领涨 标普指数创盘中新高** 在周三的交易中,美国股市高开,科技股领涨市场,标普500指数创下盘中新高。投资者对经济复苏的乐观情绪以及对科技公司业绩的看好,共同推动了市场的上涨。 盘初…...
STM32F407移植OpenHarmony笔记2
接上篇,搭建完开发环境后,我们还要继续工作。 官方合作的开发板刚好有STM32F407,我准备试一下开发板的demo,虽然我用的不是他们的开发板。 先下载以下3份代码: https://gitee.com/openharmony/device_board_talkweb…...
数据仓库-相关概念
简介 数据仓库是一个用于集成、存储和管理大量数据的系统。它用于支持企业决策制定过程中的数据分析和报告需求。数据仓库从多个来源收集和整合数据,并将其组织成易于查询和分析的结构。 数据仓库的主要目标是提供高性能的数据访问和分析能力,以便…...
线程的面试八股
Callable接口 Callable是一个interface,相当于给线程封装了一个返回值,方便程序猿借助多线程的方式计算结果. 创建一个匿名内部类, 实现 Callable 接口. Callable 带有泛型参数. 泛型参数表示返回值的类型. 重写 Callable 的 call 方法, 完成累加的过程. 直接通过返回值返…...
Jmeter 配置元件
Jmeter 配置元件 CSV 数据集配置HTTP Cookie 管理器HTTP Header 信息头管理器增加多个用户案列 使用Jmeter发送请求的时候,需要配置元件,配置请求Header、Cookie、数据集合等。可以模拟多个在线用户登录,修改请求头数据。 CSV 数据集配置 C…...
Java- @FunctionalInterface声明一个接口为函数式接口
基本介绍 FunctionalInterface 是 Java 8 中引入的注解,用于声明一个接口是函数式接口。函数式接口是指仅包含一个抽象方法的接口,可以用于支持 Lambda 表达式和方法引用。FunctionalInterface 注解确保该接口只包含一个抽象方法,从而确保其…...
Java使用Netty实现端口转发Http代理Sock5代理服务器
Java使用Netty实现端口转发&Http代理&Sock5代理服务器.md 一、简介1.功能2.参数配置3.程序下载4.程序启动5.源码 一、简介 这里总结整理了之前使用Java写的端口转发、Http代理、Sock5代理程序,放在同一个工程中,方便使用。 开发语言:…...
Linux环境docker安装Neo4j,以及Neo4j新手入门教学(超详细版本)
目录 1、 图数据库Neo4j简介1.1 什么是图数据库1.2 能解决什么痛点1.3 对比关系型数据库1.4 什么是Neo4j1.5 Neo4j的构建元素 2. 环境搭建2.1 安装Neo4j Community Server2.2 docker 安装Neo4j Community Server2.3 Neo4j Desktop安装 3. Neo4j - CQL使用3.1 Neo4j - CQL简介3.…...
C++ inline 关键字有什么做用?
C/C 之中 inline 是一个很有意思的关键字,奇奇怪怪的用法见过不少,今天抽点时间出来聊聊这个东西。 inline 可以用在那些方面?修饰 inline 内链关键字到底有什么作用? OK:started 1、inline 可以用在类成员函数的声明…...
eNSP学习——理解ARP及Proxy ARP
目录 名词解释 实验内容 实验目的 实验步骤 实验拓扑 配置过程 基础配置 配置静态ARP 名词解释 ARP (Address Resolution Protocol)是用来将IP地址解析为MAC地址的协议。ARP表项可以分为动态和静态两种类型。 动态ARP是利用ARP广播报文,动态执行并自动进…...
Unity中UGUI在Mask剪裁粒子特效的实现
在Unity使用Mask是剪裁不了粒子特效的,之前有想过RenderTexture来实现,不过使用RenderTexture不适合用于很多个特效,因为RenderTexture依赖Camera的照射,如果在背包中每种道具都有不同的特效,那使用RenderTexture则需要…...
测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
