我经常在 Linux 中安装不以软件包形式提供的应用程序,而只需下载 tarball、解压,然后从解压的文件夹中运行应用程序即可。为了将应用程序调整到我的环境,我需要修改默认配置文件,也许还要添加我自己的奇怪脚本,我希望有一种方法可以自动记录所有这些修改,以便我可以将它们应用到另一个环境中。显然,这些修改无法逐字复制,因为 IP 地址或用户名等内容需要在不同系统之间更改;但对更改和添加内容的详尽记录仍然很有用。
我的解决方案是使用涉及git基本上,在我解压 tarball 后,我会执行git init和初始提交,然后我可以将输出保存到文件中git diff和一个猫所有出现在新文件中的文件git 状态 -s。
但我确信还有更有效的方法。???
答案1
git
(或者patch
,如果您不想依赖)和 bash 脚本的组合应该可以工作,git
在 bash 脚本中,您可以使用一些命令替换 IP / 用户名。使用后跟命令名称来了解每个命令。本质上,您需要将更改存储到 git repo(或要与一起使用的补丁文件)中,然后在新安装中只需获取更改并运行脚本以替换必要的信息。请注意,也可以生成补丁文件。sed
man
patch
git