标签:sed passwd 替换 etc 剑客 Linux txt mclind
sed:常用来取行,过滤,替换修改文件内容;向后引用;
格式:
sed 选项 '条件动作/找谁干啥' 文件;
取出文件第3行
sed -n '3p' /etc/passwd //p就是输出,-n,取消默认输出
如何运行:
sed命令运行时候,一行一行读取,放到内存中,叫模式空间-内存(pattern space),然后看看第1行是不是我要的,不是放行,默认会把当前行输出屏幕,是,就执行对应命令,比如增删改查;
sed增删改查之查找
类似于grep命令的过滤,比grep强在于可以指定行号;
类似于grep命令的功能,过滤,模糊查询(通过正则);
案例1: 取出第2行到第5行 sed -n '2,5p' /etc/passwd
案例2:过滤出/etc/passwd中包含root的行; sed -n '/root/p' /etc/passwd // //之间,可以写基础正则 sed -n '/^root/p' /etc/passwd //如果需要使用扩展正则,需要加-r选项 sed -n '// , //p' /etcpasswd //从哪里来,到哪里结束,模糊匹配,连续匹配 试着取出access.log中11:05到11:06的日志 sed -n '/11:05:00/,/11:06:00/p' access.log 只显示第2行,第5行 sed -n '2p;5p' /etc/passwd 从第1行开始,每2行取一下 [root@web01 ~]# seq 10 | sed -n '1~2p'
|
sed命令增删改查之修改:
sed的修改叫做替换。 案例01:把sed.txt文件中mclind替换为oldboy sed 's#mclind#oldboy#g' sed.txt //'s#找谁#替换成谁#g' ,s,substitute,替换,g,global,全局替换,不加只替换一次;替换成谁,不写就是删除 sed 's#mclind##g' sed.txt //注意,这样只是输出看起来修改了,默认是不改变文件的,加上-i选项,就是修改文件 sed -i 's#mclind##g' sed.txt //-i后可以加内容,修改文件内容前备份,然后再修改 sed -i.bak 's#mclind##g' sed.txt //如果有多个选项,-i这个放最后; sed '3s#mclind#oldboy#g' sed.txt //只替换第3行
干啥命令: p print c 增加 d 删除 s 替换
|
标签:sed,
passwd,
替换,
etc,
剑客,
Linux,
txt,
mclind
From: https://www.cnblogs.com/mclind/p/16991733.html