我正在研究Ubuntu系统,目前这正是我正在做的事情:
if ! which command > /dev/null; then
echo -e "Command not found! Install? (y/n) \c"
read
if "$REPLY" = "y"; then
sudo apt-get install command
fi
fi
Run Code Online (Sandbox Code Playgroud)
这是大多数人会这样做的吗?还是有更优雅的解决方案?
是否有一种优雅且更像Python的方法来检查Debian上是否安装了软件包?
在bash脚本中,我会这样做:
dpkg -s packagename | grep Status
Run Code Online (Sandbox Code Playgroud)
建议在Python脚本中执行相同的操作?
谢谢,
根据操作系统,目前我需要使用apt或rpm安装一些软件包.我看到lib"apt"更新或升级系统,但有可能用它来安装一个软件包吗?
我试图使用"subprocess":
subprocess.Popen('apt-get install -y filetoinstall', shell=True, stdin=None, stdout=None, stderr=None, executable="/bin/bash")
Run Code Online (Sandbox Code Playgroud)
但是这个命令显示了shell中的所有进程,我无法隐藏它.
谢谢您的帮助.