我正在编写一个shell脚本,在脚本运行之前,我想验证用户是否安装了Python 3.有人知道或者知道我如何判断它,并且输出是布尔值吗?

推荐答案

交互式shell

只需跑python3 --version.如果安装了Python 3,您应该会得到一些输出,比如Python 3.8.1.

Shell脚本

您可以使用commandtype内置:

command -v python3 >/dev/null 2>&1 && echo Python 3 is installed  # POSIX-compliant
type -P python3 >/dev/null 2>&1 && echo Python 3 is installed     # Bash only

不建议使用which,因为它需要启动一个外部进程,并且可能会在some cases中给出不正确的输出.

Python-3.x相关问答推荐

使用Polars阅读按日期键分区的最新S3镶木地板文件

Python GUI:tkinter应用程序作为Windows的实时桌面

从一列字符串中提取子字符串并将它们放入列表中

需要找到完全匹配并使用正则表达式替换

使用 NaN 计算 pct_change 时如何避免 bfill 或 ffill

txt 文件与不同的分隔符到整数列表

如何使用`re.findall`从字符串中提取数据

Snakemake 'run' 指令不产生错误信息

pip 找不到最新的软件包版本

从 h264 帧解析数据包时 PyAV 不一致

ImportError:没有名为资源的模块

python 3集合中的Discard()和Remove()函数有什么区别

日志(log)模块不适用于 Python3

Pythonic,自定义警告

为什么中断比引发异常更快?

如何正确创建自定义文本编解码器?

0 是 0 == 0(#evaluates 为真?)

python判断一个方法是否被调用而不模拟它

Python 3 - Zip 是 pandas 数据框中的迭代器

没有名为urlparse的模块,但我没有使用 urlparse