{
ipython -c 'from package import module' && echo "Successful import"
} || echo "package not found!"
这是bash的典型try..catch语法.如果命令&&会起作用,它将在之后执行命令,否则在||之后执行命令.
但是在这种情况下,是否安装了软件包,或者我应该说命令是否
ipython -c 'from package import module'
返回None或ImportError,bash将其读取为成功执行并输出“成功导入”
如何使用bash检查是否成功导入python软件包?
编辑:并以退出状态1返回?
解决方法:
您至少有两种可能性:
>在shell脚本上使用“ pip”获取已安装软件包的列表,然后使用grep获取游览软件包:
点列表| grep yourpackage&&已安装回声||回声“未安装”
>使用Python-bash脚本,我不知道该如何调用它,但是我知道如何使用它:
就像是:
output=$(
python - <<EOF
try:
import your_package;
print "Package Installed"
except Exception:
print "Package not installed"
EOF
)
echo $output
在这里,您有很多替代方法可以检查软件包/模块的存在,因此,在尝试导入软件包的过程中,您可以以pythonic的方式检查软件包的存在.您可以为此answer或this获取不同的解决方案,并替换导入的your_package;与其中之一.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。