sed
命令基本用法
sed
命令用于在输入流(文件或管道输入)上执行基本的文本转换操作。
例子
例子 1:打印行
命令:打印文件中的所有行。
sed -n 'p' file.txt
解释:-n
抑制自动打印模式空间,'p'
打印每一行。file.txt
是输入文件。
例子 2:替换(查找并替换)
命令:在文件中将所有出现的 ‘old’ 替换为 ‘new’。
sed 's/old/new/g' file.txt
解释:'s/old/new/g'
是替换命令:
s
:替换命令。old
:要查找的模式。new
:替换的文本。g
:全局标志(在每一行上替换所有出现)。
例子 3:删除行
命令:删除匹配模式的行(例如,包含 ‘pattern’ 的行)。
sed '/pattern/d' file.txt
解释:'/pattern/d'
删除(d
)包含 ‘pattern’ 的行。
例子 4:插入或追加行
命令:在匹配模式之前插入新行。
sed '/pattern/i\新行插入的内容' file.txt
解释:'/pattern/i\新行插入的内容'
在匹配 ‘pattern’ 的行前插入(i
)‘新行插入的内容’。
例子 5:打印特定行或行范围
命令:打印特定行号或行范围。
sed -n '10p' file.txt
sed -n '5,10p' file.txt
解释:-n
抑制自动打印。
'10p'
:打印第 10 行。'5,10p'
:打印第 5 行到第 10 行。
参数解释
-n
:抑制模式空间的自动打印。's/old/new/g'
:查找并替换命令。'/pattern/d'
:删除匹配模式的行。'/pattern/i\新行插入的内容'
:在匹配模式前插入一行。'-n '10p'
:打印第 10 行。'-n '5,10p'
:打印第 5 行到第 10 行。