1.sed命令;主要作用是查找;新增 删除 和修改替换。
user.txt
daokr#cat user.txt
ID Name Sex Age
zhang M 19
wang G 20
cheng M 10
huahua M 100
查找命令:-n 和 p(print)
在user.txt文件中;匹配带h的行 并且只显示1,3行
cat user.txt | grep h |sed -n '1,3p'
daokr#cat user.txt | grep h |sed -n '1,3p'
1 zhang M 19
3 cheng M 10
4 huahua M 100
删除命令:d(delete)
删除最后一行记录
cat user.txt | grep h | sed '$d'
在user.txt中显示带h的行;并且从结果中删掉2,3行的记录;只看第一行记录
cat user.txt | grep h |sed '2,3d'
daokr#cat user.txt | grep h
zhang M 19
cheng M 10
huahua M 100
daokr#cat user.txt | grep h |sed '2,3d'
zhang M 19
新增数据:a (append)
在user.txt中查询出带h的行;并在第二行后面添加新的一行数据
cat user.txt | grep h |sed '2a5thuangtGt40'
前面插入:i (insert)
在第二行插入2行数据的签名插入新增的数据:
cat user.txt | grep h |sed '2i hellonword'
数据行替换:c
把第二行数据;用命令c替换成 10 wanghua N 90
cat user.txt | grep h |sed '2c 10twanghuatNt90'
字符串的替换:s
格式为“行范围s/旧字串/新字串/g”
daokr#cat user.txt | grep h
zhang M 19
cheng M 10
huahua M 100
daokr#cat user.txt | grep h |sed '2s/ch/wh/g'
zhang M 19
wheng M 10
huahua M 100
替换并写入文件:-i
把第3行的数据里的wang 替换成heee 并写入到user.txt
sed -i '3s/wang/heee/g' user.txt
daokr#sed -i '3s/wang/heee/g' user.txt
daokr#cat user.txt
ID Name Sex Age
Fhang M 19
heee G 20
cheng M 10
huahua M 100
多行替换:-e
sed -e 's/zhang//g ; s/wang//g' user.txt # -e允许多条命令顺序执行,用分号隔开,s前面不加数字表示所有行
sed -e 's/he/wl/g;s/hua/lua/g' user.txt
daokr#sed -e 's/he/wl/g;s/hua/lua/g' user.txt
ID Name Sex Age
Fhang M 19
wlee G 20
cwlng M 10
lualua M 100
以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要
PHP进阶架构师>>>视频、面试文档免费获取docs.qq.com或 者关注咱们下面的知乎专栏
PHP大神进阶zhuanlan.zhihu.com链接:https://www.cnblogs.com/wanglijun/p/8716265.html