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则需要…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

MySQL:分区的基本使用
目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区(Partitioning)是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分(分区)可以独立存储、管理和优化,…...