linux之sed编辑器指令练习

目录

一、sed编辑器

二、sed使用案例

[1.1 s命令(substitute替换)](#1.1 s命令(substitute替换))


一、sed编辑器

sed编辑器比交互式编辑器快的多,可以简化数据处理任务,sed编辑器并不会修改文件,只会将修改后的数据,输出。

二、sed使用案例

首先创建一个文件,创建指令如下:

bash 复制代码
# 在sample.txt文件中重复"Hello, this is a sample text file for practicing sed command."这一行内容10次
for i in {1..10}; do echo "Hello, this is a sample text file for practicing sed command."; done >> sample.txt

# 查看文件
cat sample.txt

生成文件内容如下:

1.1 s命令(substitute替换)

使用sed指令,其中s命令会用斜线间第二个文本字符串来替换第一个文本字符串,

bash 复制代码
sed 's/sample/small sample/' sample.txt  

也就是使用红色框里面的small sample替换蓝色的sample,可以看到文件内容已经发生黄色标注的变化。

要在sed命令上执行多个命令时,使用-e选项

bash 复制代码
sed -e 's/sample/big sample/; s/Hello/Hi/' sample.txt

也就是使用了红色框里面的两个s替换命令,可以看到文件内容已经发生黄色标注的变化。

如果有大量要处理的sed命令,把sed命令放在一个文件里更方便,然后使用-f选项指定文件,创建一个如下的sed命令文件,最好文件名用sed结尾,否则很容易和shell脚本搞混。

bash 复制代码
sed -f script1.sed sample.txt

这里我们看到文件的内容并没有修改,是因为开篇我们提到,sed指令并不会修改文件内容,只会把修改结果输出到屏幕上。

相关推荐
Xの哲學34 分钟前
Linux设备驱动模型深度解剖: 从设计哲学到实战演练
linux·服务器·网络·算法·边缘计算
企业对冲系统官1 小时前
基差风险管理系统集成说明与接口规范
大数据·运维·python·算法·区块链·github
松涛和鸣1 小时前
DAY55 Getting Started with ARM and IMX6ULL
linux·服务器·网络·arm开发·数据库·html
HIT_Weston2 小时前
101、【Ubuntu】【Hugo】搭建私人博客:元信息&翻译(二)
linux·运维·ubuntu
暮云星影2 小时前
一、linux系统 应用开发:基本认知概念
linux·arm开发
座山雕~2 小时前
docker---部署与常用命令
运维·docker·容器
赵民勇2 小时前
yum命令用法与技巧总结
linux·centos
凯丨2 小时前
使用 frp 实现内网穿透:让本地服务器安全暴露到公网
运维·服务器·安全
小小福仔2 小时前
Linux运维基础篇(二)之用户管理
linux·运维·服务器·增删改查
企业对冲系统官2 小时前
大宗商品风险对冲系统统计分析功能的技术实现
运维·python·算法·区块链·github·pygame