网站开发 入门 pdf网站推广策划的思路包括哪些内容
sed 是一个流编辑器,用于对输入流(或文件)进行基本的文本转换。以下是 sed 命令的详细输出说明文档:
1. 基本语法
sed [OPTIONS]... [SCRIPT] [INPUTFILE...] | 
OPTIONS:可选的命令行选项,如-i用于直接修改文件。SCRIPT:要执行的sed命令或脚本。INPUTFILE:要处理的输入文件。如果没有指定,则默认为标准输入。
2. 命令行选项
-n:不打印模式空间的内容,除非指定了p命令。-e SCRIPT或--expression=SCRIPT:添加SCRIPT到要执行的命令中。-f SCRIPTFILE或--file=SCRIPTFILE:从SCRIPTFILE读取sed命令。-i[SUFFIX]或--in-place[=SUFFIX]:直接修改文件内容,而不是输出到标准输出。如果指定了SUFFIX,则创建原始文件的备份,备份文件的扩展名为SUFFIX。--follow-symlinks:在-i模式下,如果文件是符号链接,则修改符号链接指向的文件,而不是符号链接本身。- ...(还有其他选项,但上述是最常用的)
 
3. sed 命令
sed 命令通常由一个地址(模式)和一个操作组成,格式为 ADDRESSCOMMAND 或 ADDRESS{COMMANDS}。
ADDRESS:可以是一个数字(行号)、正则表达式或模式范围。COMMAND:要执行的操作,如p(打印)、d(删除)、s/REGEXP/REPLACEMENT/(替换)等。
示例命令
-  
打印文件的所有内容(虽然这通常使用
cat,但sed也可以做到): 
sed -n 'p' filename | 
-  
删除所有包含 "pattern" 的行:
 
sed '/pattern/d' filename | 
-  
替换 "foo" 为 "bar":
 
sed 's/foo/bar/' filename | 
(注意:默认只替换每行中的第一个匹配项。要替换所有匹配项,请使用 g 标志:s/foo/bar/g)
4. 在 "foo" 前后添加 "bar"(使用 & 符号):
sed 's/foo/bar&baz/' filename | 
-  
使用多个命令:
 
sed -e 's/foo/bar/' -e '/baz/d' filename | 
或
sed 's/foo/bar/; /baz/d' filename | 
-  
处理特定行:
-  
打印第 3 行:
 
sed -n '3p' filename-  
删除从第 2 行到包含 "end" 的行(包括 "end"):
 
sed '2,/end/d' filename -  
 
4. 脚本文件
你可以将 sed 命令保存在一个文件中,并使用 -f 选项执行它。例如,假设你有一个名为 script.sed 的文件,其中包含以下命令:
s/foo/bar/  | |
/baz/d | 
你可以这样执行它:
sed -f script.sed filename | 
5. 注意事项
- 使用 
-i选项时要小心,因为它会直接修改文件内容。 sed的正则表达式默认使用基本正则表达式(BRE)。如果你需要更强大的功能,可以考虑使用扩展正则表达式(ERE),但请注意sed在不同平台上的行为可能会有所不同。在某些sed版本中,你可以使用-E选项来启用 ERE。sed的输出默认是发送到标准输出的。如果你想要修改文件并保存更改,请使用-i选项。
