问题描述
有个远端配置文件用来配置代理软件的代理规则,比如哪个网站走代理,哪个网站走直连。但是这个配置文件的代理规则不完全符合我们的预期,我们想要在它的基础上添加一些代理规则。然而,每次从远端更新配置文件时,都会覆盖掉我们之前添加的那些内容,导致我们需要重新把自定义的代理规则添加上去。
初步解决方案——文件合并
配置文件A:每次从远端拉取更新内容都会覆盖。
每次我们往配置文件A中添加的那些自定义代理规则都会失效。为了解决这个问题,可以将自定义的代理规则抽取到配置文件B,每次从远端拉取完更新之后,再执行如下命令合并生成目标配置文件C:
cat A.yaml B.yaml > C.yaml
然后使用文件C作为代理软件的配置文件。
新的问题
每次拉取完更新之后,我们都要手动执行命令合并生成新的配置文件。
每次修改配置文件B之后,我们也要手动执行命令合并生成新的配置文件。
最终解决方案——文件监听并合并
fswatch工具的安装
brew install