文件编辑

SED

SED 命令一般用于替换文件中的文本。匹配内容支持正则表达式。

基本用法

// 替换a.txt文件中的hello为hi,默认替换掉每一行的第一个hello
$ sed 's/hello/hi/' a.txt

flag

$ sed 's/hello/hi/<flag>' a.txt

几个不同的flag

  • <n>: 如1, 2, 3等整数,替换掉每行的第n个匹配
  • g: 替换掉全部匹配
  • <n>+g: 如2g, 则表示替换掉每行的第2个到所有剩余的匹配
  • p: 将包含匹配项的行在输出中打印两遍
  • d: 删除匹配项所在的行

特定行

$sed '3 s/hello/hi/' a.txt //只替换第3行
$sed '1,3 s/hello/hi/' a.txt //替换第1到3行
$sed '3,$ s/hello/hi/' a.txt //替换第3到末行
$sed '1,3d' a.txt //删除第1到3行

张海东
15 声望0 粉丝

引用和评论

0 条评论