获取Julia(Linux)中的当前用户名

Col*_*ers 6 linux julia

我必须做一些愚蠢的事,但我似乎无法使用Julia检索当前的用户名.最接近的函数Base似乎是gethostname(),但它返回计算机名称,而不是用户名.我尝试过系统调用但由于插值字符而遇到麻烦$.具体来说,尽管echo $USER在终端中返回相应的用户名,但当我在Julia中尝试以下内容时,我会收到各种错误或错误答案:

run(`echo $USER`)
run(`echo "$USER"`)
run(`echo '$USER'`)
run(`echo '$'USER`)
run(`echo \$USER`)
Run Code Online (Sandbox Code Playgroud)

我想这个问题是Julia误解$为插值,但我不知道如何解决这个问题.

有任何想法吗?

Ama*_*dan 8

一个简单的解决方法:

run(`whoami`)
Run Code Online (Sandbox Code Playgroud)

但不必要,因为这有效:

ENV["USER"]
Run Code Online (Sandbox Code Playgroud)

  • `run`没有运行shell; 并且shell是您插入环境变量所需的.`run`将以类似shell的方式插入*Julia*变量.阅读更多[这里](http://julia.readthedocs.org/en/latest/manual/running-external-programs/). (3认同)