GNUsed
1.0、参考
1.1、GNU sed简介
short for:stream editor
是什么 ?:a non-interactive command-line text editor.
开发语言:C
开发组织:GNU
官方主页:https://www.gnu.org/software/sed

sed最初是在UNIX上开发的, 我们现在用的最多的两个版本是GNU sedBSD sedGNU/Linux上默认使用GNU sed, 而macOS上默认使用的是BSD sed

1.2、通过包管理器安装GNU sed
操作系统包管理器安装命令
Windowsscoopscoop install sed
WindowsChocolateychoco install -y sed
macOSHomeBrewbrew install gnd-sed
GNU/LinuxLinuxBrewbrew install gnu-sed
aptsudo apt-get install -y sed
CentOSyumsudo yum install -y sed
dnfsudo dnf install -y sed
openSUSEzyppersudo zypper install -y sed
Alpine Linuxapksudo apk add sed

Arch Linux

ArcoLinux

Manjaro Linux

pacmansudo pacman -Syyu --noconfirm
sudo pacman -S    --noconfirm sed
Gentoo LinuxPortagesudo emerge sed
1.3、通过编译源码安装GNU sed 

step1、安装依赖

下载时cURL
解压时tarxz
编译时POSIX shGNU CoreUtilsGNU makeGCC ( gcc )   | LLVM / Clang
运行时
  • glibc ( libc.sold-linux-x86-64.so )
  • acl ( libacl.so )
  • attr ( libattr.so )

step2、使用curl命令下载GNU sed源码包 (

curl -LO https://mirrors.tuna.tsinghua.edu.cn/gnu/sed/sed-4.7.tar.xz

step3、使用tar解压GNU sed源码包

tar vxf sed-4.7.tar.xz

step4、进入sed-4.7目录,并查看它的内容

step5、配置、编译、安装

./configure && make && sudo make install
1.4、sed命令

sed命令的使用方式如下:

sed [option...] COMMAND FILE...
1.4.1、-n

设置为安静模式。默认的,sed会输出被命令处理的每一行,设置为安静模式就不会有输出。

1.4.2、-i

in-plcae,直接编译源文件,而不是将源文件做一个副本,对副本进行操作。

1.4.3、-e COMMAND

指定要执行的命令,此参数可以出现多次,依次执行命令。

1.4.4、-f scriptFile

可以将COMMAND写在文件中,使用此参数指定这个脚本文件。

1.4.5、COMMAND
命令说明
p打印出匹配到的整行内容
d删除匹配到的整行内容
i在匹配到的行前面一行插入内容
a在匹配到的行后面一行插入内容
c替换匹配到的整行内容
s替换匹配到的内容