sed编辑器
sed成为流编辑器,跟普通交互式编辑器恰好相反,即在处理文本流之前已经定义好规则。它可以基于命令行或文本处理,它每次从输入中读取一行,用提供的编辑器命令匹配数据,按命令中指定的方式修改流中的数据,然后将生成的数据输出到STDOUT。
命令格式:sed option script file
s 命令,将文本进行替换
例:echo “This is a test” | sed ‘s/test/TEST/’
#将test替换为TEST
或 sed ‘s/test/TEST/’ filename
但是这样替换只替换遇到的第一个,若是替换文本中所有的则需要flag
s/pattern/replacement/flags
在g作为标志时可以替换文本中特定匹配地方出现的文本
注意:由于正斜线通常表示文件路径,当出现在模式文本中时需要进行转义
e 命令,执行多个命令
f 命令,指定文件
此时会将每一行作为一个命令
gawk命令
格式:
gwak options program file
gawk的强大之处在于处理数据,当读取文本后可以利用它处理文本并显示。
从命令行读取程序脚本
使用数据字段变量
gawk利用分隔符对数据字段进行分割,其默认的分隔符是任意的空白字符(如空格或制表符),利用-F选项可以指定分割符。
当使用多个命令时,每个命令后面需加分号,或者利用次提示符一行一个命令的输入脚本程序。
文件中读取程序:
在文件中使用多条命令的话,只需将每一行放置一条命令就行了。
在处理数据前运行脚本:
默认情况下,gawk先从输入中读入一行文本再对文本进行处理。利用BEGIN关键字它会强制在读取数据前执行BEGIN关键字后面的程序脚本
显示之后不会等待文本的输入,而是迅速的退出。
在处理数据之后运行脚本:
END关键字允许在处理数据之后运行相应的内容。
未完 。。。。。。