可能重复:
如何检查软件包是否已安装(无超级用户权限)
我想要一个 shell 脚本方法来测试/报告某个包是否已安装。我不需要详细信息,只需要是/否。
我想到这个方法。有没有更直接的方法?
is_installed=0
test_installed=( `apt-cache policy domy-ce | grep Installed: ` )
[ ! "${test_installed[1]}" == "(none)" ] && is_installed=1
答案1
dpkg -s <packagename>
您可以使用或的 输出
dpkg-query -l <packagename>
在你的脚本中实现这个目的。
礼貌:https://stackoverflow.com/questions/1298066/check-if-a-package-is-installed-and-then-install-it-if-its-not
例如
#!/bin/sh
for P; do
dpkg -s "$P" >/dev/null 2>&1 && {
echo "$P is installed."
} || {
echo "$P is not installed."
}
done
用法:script.sh package1 package2 .... packageN