我应该包含代码来安装我的脚本所需的软件包吗?

我应该包含代码来安装我的脚本所需的软件包吗?

我有一个脚本只是为了学习 bash 而构建的,它jq用于 json 解析,假设其他人下载它并运行该文件,bash 会自动提示用户安装jq还是我应该包含在脚本中来安装它?是的,我知道终端可能会抛出异常jq: command not found,但是有没有办法更优雅地处理它?或者这是通常的处理方式?这是如何do you want to install the package jq (Y/N)?实现的?

答案1

你应该离开它。通常,您只会在为特定包管理器创建包时安装依赖项,而不是作为程序或脚本的一部分。

有很多不同的包管理器,每种都有自己的处理依赖关系的方式,您想让人们选择安装哪一个。这样他们就可以保持一致。否则,他们最终可能会遇到重复包和库版本不兼容等问题。

此外,即使您从源代码进行编译(某些机器没有编译器),您的脚本也不知道如何在所有系统上安装依赖项。

如果有的话,您应该在文档中列出它们(自述文件、注释等)

相关内容