Linux学习笔记_三剑客命令的sed命令复习(sed的替换功能用法)

Linux-基本命令 专栏收录该内容
13 篇文章 0 订阅

需求:把目录下的所有.sh文件中的内容替换

实现:


ls /data

a.txt  b.sh  c.sh  d.info


方法1

-----------------------------------------------------------

先查看替换前内容

find -type f -name "*.sh" |xargs cat    

before

before


测试替换结果,sed无参数时仅打印输出

find -type f -name "*.sh" |xargs sed 's#before#after#g'    

after

after


-i参数为在文件中进行替换修改

find -type f -name "*.sh" |xargs sed -i 's#before#after#g'   


查看替换后内容

find -type f -name "*.sh" |xargs cat   

after

after


注:

|xargs 理解为将管道前输出处理成后续命令的参数(汇成单行)输入

若直接 |cat,则cat只会把管道前的输出当作文本处理

-----------------------------------------------------------



方法2

-----------------------------------------------------------

sed -i 's#before#after#g' `find -type f -name "*.sh"`


等价于:

sed -i 's#before#after#g' /data/b.sh /data/c.sh


注:

``符号内的内容先执行

``符号为“Tab键”上面的按键符号,反引号(?)

-----------------------------------------------------------




  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值