Linux SED技巧:老男孩也能轻松搞定! (linux sed 老男孩)

树叶云

Linux系统是开源的,而且有很多好用的工具。其中SED是非常实用的一个工具。虽然SED的语法看起来比较复杂,但其实只要掌握了一些技巧,老男孩也能轻松搞定。

什么是SED?

SED是一种文本流编辑器,它可以在输入流中进行文本查找和替换等操作。SED是一种很常用的Linux命令,可以用于各种文本处理。它的基本作用就是读取一个文件流,对其中的文本进行过滤、查找、替换等操作。SED可以用来完成很多复杂的文本处理任务,比如批量修改文件名、批量替换字符串等。通过上手使用,可以有效提高工作效率。

SED基本语法

SED最基本的用法是在命令行中使用。SED命令的语法格式为:sed [option] ‘[script]’ [filename],其中option是SED命令的选项,script是SED脚本,filename是要处理的文件名。

SED命令选项:

-n:禁止默认输出

-r:启用正则表达式

-i:修改文件内容

-e:支持多个编辑指令

-f:从文件中读取编辑指令

SED脚本语法:

[address1],[address2] command:范围匹配

[address] !command:单行否定匹配

[address] command1;command2:多命令组合

SED常用技巧

1. 删除文件中特定行

有时候我们需要删除文件中特定行,比如要删除文件中的第5行,可以使用如下命令:

$ sed ‘5d’ file

其中5d指的是删除文件file的第5行。

若要同时删除文件file的第5行到第10行,则可以使用如下命令:

$ sed ‘5,10d’ file

2. 文件中替换文本

想要批量替换文件中的某些文本,可以使用如下命令:

$ sed ‘s/old/new/’ file

其中old表示原来的文本,new表示要替换的文本。

3. 删除空白行

若要删除文件中的所有空白行可以使用如下命令:

$ sed ‘/^$/d’ file

其中^$表示匹配空白行,d表示删除。

4. 批量更改文件名

有时候我们需要批量更改文件名,比如将所有文件名中的.txt都修改为.php,可以使用如下命令:

$ ls *$txt | sed ‘s/\(.*\)\.txt/mv & \1.php/’ | sh

5. 查找操作

若要在文件中查找某一文本,可以使用如下命令:

$ sed -n ‘/pattern/p’ file

其中pattern是要查找的文本。

SED命令的应用范围非常广泛,比如查找替换、删除文件中的特定行、调整字符行的位置等。只要掌握了SED的语法以及一些基本技巧,便可以轻松应对各种需求。希望这篇文章可以帮助大家更好地掌握SED技巧,提高工作效率。

相关问题拓展阅读:

  • linux之文本内容替换命令sed

linux之文本内容替换命令sed

sed简介:流编辑工具,用来对文本进行过滤与替换操作。

sed流程:sed通过一次仅读取一行内容来对某些指令进行处理后输出。

1、sed通过文件或管道读取文件内容,但sed默认并不直接修改源文件,而是将读入的内容复制到缓冲区中,称之为模式空间。

2、所有的指令操作都是孝判在模式空间找那个进行

3、sed根据相应的指令对模式空间中的内容进行处理并输出结果,默认输出至标准输出(即屏幕上)。

sed基本语法格式:

用法:sed…{脚本指令}…

选项: -version 显示sed版本

-help :显示帮助文档

-n,-quiet,-silent静默输出,默认情况下,sed程序在所有的脚本指令执行完毕后,将自动打印模式空间中的内容。

-e script允许多个脚本指令被执行

-f script-file从文件中读取脚本指令,对编写自动化脚本程序很实用

-i ,-in-place 该选项直接修改源文件

-l N 该选项指定l指令可以输出的行长度,l指令为输出非打印字符。

-posix 禁用GNU sed扩展功能。

-r 在脚本指令辩察中使用扩展正则表达式。

-s,-separate 默认情况下,sed将把输入的多个文件名作为一个长的连续的输入流。而GNU sed则允许把它们当作单独的文件。

-u,-unbuffered 更低限度的缓存输入与输出

a,append表示追加指令;

i,insert表示插入指令;

d,delete表示删除指令;

s,substitution表示替换指令。

sed脚本指令的基本格式是:

命令(有些命令仅可以对一行操作,有些可以对多行操作),命令也可以用花括号进行组合,使命令序列可以作用于同一个地址。

address{

command1

command2

command3

}

sed的基本工作方式是:

sed的替换命令s:

1、全局替换 : s/old/new/g ,其中g为全局替换,用于替换所有出现的次数; /如果和正则匹配的内容冲突可以使用其他符号,如 : s@old@new@g

2、标志位

为什么要有多行模式: 配置文件一般有单行出现,但也有使用json或XML格式的配置文件,为多行出现。

关于linux sed 老男孩的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/217163.html<

(0)
运维的头像运维
上一篇2025-04-13 01:39
下一篇 2025-04-13 01:40

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注