最近我的一个 bash 脚本失败了,因为cmake
和zip
/unzip
没有安装在系统上。
在$PATH
env 中检查已安装软件包的便捷方法是什么?
我想$PATH
直接检查cmake
等等,因为我的脚本在 Debian、Ubuntu、Arch 等上运行。因此,我宁愿不使用包管理器,因为我必须根据当前执行脚本的发行版使用dpkg
, pacman
, ...多次实现它。
正如在“为什么不使用“which”?然后使用什么? “中提到的,测试是否在其中找到命令的最便携方法$PATH
是通过:
if command -v given-command > /dev/null 2>&1; then
echo given-command is available
else
echo given-command is not available
fi
Run Code Online (Sandbox Code Playgroud)
如果您的脚本供公众使用,您显然应该记录先决条件,以便其他人能够在运行代码之前安装依赖项。