我刚刚在openSUSE上安装了utop,但是当我在终端中键入utop时,我就拥有了
If 'utop' is not a typo you can use command-not-found to lookup the package that contains it, like this:
cnf utop
键入eval 'opam config env'
可以给我以下信息:
OPAM_SWITCH_PREFIX='/home/jadw1/.opam/default'; export OPAM_SWITCH_PREFIX;
CAML_LD_LIBRARY_PATH='/home/jadw1/.opam/default/lib/stublibs:/usr/lib64/ocaml/stublibs:/usr/lib64/ocaml'; export CAML_LD_LIBRARY_PATH;
OCAML_TOPLEVEL_PATH='/home/jadw1/.opam/default/lib/toplevel'; export OCAML_TOPLEVEL_PATH;
MANPATH='/usr/local/man:/usr/share/man:/home/jadw1/.opam/default/man'; export MANPATH;
PATH='/home/jadw1/.opam/default/bin:/home/jadw1/bin:/usr/local/bin:/usr/bin:/bin:/usr/lib/mit/sbin'; export PATH;
答案 0 :(得分:1)
您应该输入以下内容:
$ eval `opam config env`
不是这样的:
$ opam config env
发生的情况是opam config env
写出了一些您想执行的shell命令。 eval
就是这样做的。如果您看到的输出像您看到的那样,则意味着您省略了eval
。
答案 1 :(得分:1)
eval
是从给出的参数构造命令并执行它们的命令。
eval 'opam config env'
带有撇号,因此等效于直接运行opam config env
,它只写出一系列shell命令。
但是,如果用反引号替换撇号,它将首先执行带引号的命令,然后将其输出传递给eval
并执行 that 。 / p>
eval `opam config env`
因此大致相当于运行opam config env
,然后将输出复制并粘贴回控制台,您也可以这样做。