用于通过dpkg查询安装丢失包的脚本



我有一个脚本正在处理命令行中丢失的包,但我希望有一个选项来添加对安装丢失的应用程序的控制。做这件事最好的方法是什么?apt-get-install$tmp?

#!/bin/bash
echo "Checking server for missing packages..."
tmp=$(dpkg-query -W -f='${Package} ${Status} n' apache2 openssh-server php5 
php5-cli php5-xsl php5-imap php5-curl | grep "no package found")
if [[ $tmp =~ "no package found" ]]
then
echo "working"
apt-get install $tmp
else
echo "foo"
fi

我试图在其中添加一个循环,但没有从$tmp 获得输出

感谢

apt-get不会抱怨,如果您命名了系统上已经安装的软件包。考虑到这一事实,我不需要费力地过滤掉已经安装的包,只需要使用下面的一行代码。

apt-get install apache2 openssh-server php5 php5-cli php5-xsl php5-imap php5-curl

您可能希望添加-qy开关,以便安静地运行,而不会被问到任何问题。

最新更新