【发布时间】:2019-10-11 03:28:42
【问题描述】:
以python --version 作为终端输入,我想确认(也以shell 编程的形式在shell 中)安装的任何python 版本是否为3 或更高。例如,
Python 3.2.1
会产生True 或某种形式的确认,其中
python2.2p1 或 Python 2.1.4 将产生 False。
我尝试通过 sed 或 grep 使用正则表达式,但无法获得。
注意,这与一些人认为的重复是不同的,因为我问的是可以自动确认安装 python3 或更高版本的 shell 编程代码,而不是手动检查它的方法(只需输入python --version)。
【问题讨论】:
-
不是没有安装Python时的输出吗?
-
在您的情况下,似乎根本没有安装 python。要捕获这种情况,您应该询问您的包管理员,而不是使用
python -V。您使用哪个包管理器?是apt吗?此外,如果您想使用第 3 版,请致电python3而不仅仅是python。 -
此输出来自 Bash 的 Ubuntu
command-not-found挂钩。据我了解,它甚至不应该在脚本中运行。 -
这不是骗子,至少不是所选的骗子目标。这里的问题不是如何让 Python 报告其版本(欺骗目标的主题及其所有答案),而是如何编写解释该(可能还有其他)输出的 shell 脚本 .