如何创建环境变量“openssl”

如何创建环境变量“openssl”

我知道我的问题可能听起来很愚蠢,但过去两天我一直在努力解决一个问题。

我在 Ubuntu 服务器上安装了几个版本的 OpenSSL。

所需的一个位于/opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

我想要做的是,当我输入openssl几乎任何目录时,它都会转到最新版本并分别执行 openssl 命令。

我该怎么做?我尝试设置一个名为的环境变量,openssl但没有成功。

export OPENSSL=/opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

输出echo $OPENSSL

/opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

没有运气意味着每当我输入openssl

我明白了

The program 'openssl' is currently not installed.  You can install it by typing:
apt-get install openssl

我知道这与 usr/openssl 配置有关。但我不记得上次是怎么做的 :(

请帮忙

提前致谢。

答案1

环境变量的工作方式并非如此。运行 时somecommand,shell不在乎$OPENSSL关于 $somecommand 或 $SOMECOMMAND 之类的变量。只有当您实际输入而不是 时,它才会使用环境变量openssl。例如:

# ASDF=/opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

# $ASDF version
OpenSSL 1.1.0

(有些程序确实关心这一点 - 例如,Makefile 和“。/configure”脚本经常被编写来查找像 $PYTHON 这样的变量 - 但这不是一般情况。)

一个环境变量可以对你有帮助的是$PATH,其中包含要搜索命令的目录列表。如果将包含“openssl”的目录放在当前 $PATH 值前面,则运行openssl将始终首先查找该目录:

PATH="/opt/cprocsp/cp-openssl-1.1.0/bin/amd64:$PATH"

例如:

# which openssl
/usr/bin/openssl

# export PATH="/opt/cprocsp/cp-openssl-1.1.0/bin/amd64:$PATH"

# which openssl
/opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

相关内容