sed命令

sed命令, stream editor
sed注重于替换,awk注重切分和拼合

sed工作流程大致是:
读取文件的每一行,执行命令,直到文件末尾,没有输入了
反引号``引起的内容,表示执行其中的命令,等价于$()包起来
对于shell脚本命令:

db_port=`sed '/^db_port=/!d;s/.*=//'`  config_file

/代表分隔符,分号为命令的分隔
这个命令的意义是:
查找config_file中,以db_port=开头的行
d是删除命令,而感叹号表示非,即除了以db_port=开头的行都删除
s是替换命令,.*=是正则表达式,.表示任意字符,*是出现任意次
即把等号前面包括等号替换为空
最后的两个斜杠中间什么都没有,即表示替换为空
最终结果就是,取出了配置文件中,db_port的值,赋值给变量db_port

posted @ 2024-04-15 15:04  ecnu_lxz  阅读(17)  评论(0编辑  收藏  举报