小编Jay*_*Kah的帖子

sed - 用文件内容替换字符串

我有两个文件:file1file2.

file1 有以下内容:

---
  host: "localhost"
  port: 3000
  reporter_type: "zookeeper"
  zk_hosts: 
    - "localhost:2181"
Run Code Online (Sandbox Code Playgroud)

file2包含一个 IP 地址 ( 1.1.1.1)

我想要做的是替换localhost1.1.1.1,以便最终结果是:

---
  host: "1.1.1.1"
  port: 3000
  reporter_type: "zookeeper"
  zk_hosts: 
    - "1.1.1.1:2181"
Run Code Online (Sandbox Code Playgroud)

我试过了:

sed -i -e "/localhost/r file2" -e "/localhost/d" file1
sed '/localhost/r file2' file1 |sed '/localhost/d'
sed -e '/localhost/r file2' -e "s///" file1
Run Code Online (Sandbox Code Playgroud)

但是我要么替换整条线路,要么将 IP 放到我需要修改的线路之后。

sed text-processing

33
推荐指数
3
解决办法
7万
查看次数

标签 统计

sed ×1

text-processing ×1