簡體   English   中英

使用SED查找和替換值

[英]Find and Replace value using SED

我有一個包含鍵值對的文件

properties.env

development_port=8080
development_type=tcp
staging_port=8081
development_type=http

我需要從properties.env中讀取值,然后根據一些環境變量值將其替換為另一個文件,例如ENVIRONMENT=staging/development

配置文件

server:
  adminConnectors:
    -
      port: 18001
      type: http

config.yml的最終輸出應為ENVIRONMENT=staging

server:
      adminConnectors:
        -
          port: 8081
          type: http

如何使用sed命令實現此目的?

由於屬性文件看起來具有正確的語法,因此您可以僅獲取它的源代碼,然后替換整個端口行:

source properties.env
sed --in-place "s/port.*/port: $staging_port/" config.yml

當然,這假定“端口”行在您的配置中僅出現一次。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM