Erlang 获取文件{error,enoint}的常见原因是什么:get_cwd()?

Erlang 获取文件{error,enoint}的常见原因是什么:get_cwd()?,erlang,Erlang,我使用的是文件:get_cwd(),我看到了其中的错误,即{error,enoint}。导致此错误的根本问题可能是什么?如果您查看用于在此类系统上实现文件:get_cwd/0,您会发现eNot错误结果的以下解释: eOnt当前工作目录已取消链接 换句话说,如果当前工作目录已从Erlang进程下删除,则会发生此错误。关于enoint的许多类似解释存在于中 假设系统上不存在目录/tmp/foo,请尝试从erlshell执行以下调用序列: 1> file:make_dir("/tmp/foo")

我使用的是
文件:get_cwd()
,我看到了其中的错误,即
{error,enoint}
。导致此错误的根本问题可能是什么?

如果您查看用于在此类系统上实现
文件:get_cwd/0
,您会发现
eNot
错误结果的以下解释:

eOnt当前工作目录已取消链接

换句话说,如果当前工作目录已从Erlang进程下删除,则会发生此错误。关于
enoint
的许多类似解释存在于中

假设系统上不存在目录
/tmp/foo
,请尝试从
erl
shell执行以下调用序列:

1> file:make_dir("/tmp/foo").
ok
2> cd("/tmp/foo").
/tmp/foo
ok
3> file:get_cwd().
{ok,"/tmp/foo"}
4> file:del_dir("/tmp/foo").
ok
5> file:get_cwd().
{error,enoent}
此序列首先创建新目录
/tmp/foo
,并将
erl
进程的工作目录更改为它。对
文件的第一次调用:get_cwd()
会验证
/tmp/foo
是否是工作目录。然后通过调用
文件:del_dir/1
删除该目录。由于工作目录现在已不存在,对
文件:get_cwd()
的第二次调用返回
{error,enoint}
如果您查看用于在此类系统上实现
文件:get_cwd/0
的,您将发现
enoint
错误结果的以下解释:

eOnt当前工作目录已取消链接

换句话说,如果当前工作目录已从Erlang进程下删除,则会发生此错误。关于
enoint
的许多类似解释存在于中

假设系统上不存在目录
/tmp/foo
,请尝试从
erl
shell执行以下调用序列:

1> file:make_dir("/tmp/foo").
ok
2> cd("/tmp/foo").
/tmp/foo
ok
3> file:get_cwd().
{ok,"/tmp/foo"}
4> file:del_dir("/tmp/foo").
ok
5> file:get_cwd().
{error,enoent}

此序列首先创建新目录
/tmp/foo
,并将
erl
进程的工作目录更改为它。对
文件的第一次调用:get_cwd()
会验证
/tmp/foo
是否是工作目录。然后通过调用
文件:del_dir/1
删除该目录。由于工作目录现在不再存在,对
文件:get_cwd()
的第二次调用返回
{error,enoint}

不要编辑我的帖子。拒绝。不要编辑我的帖子。拒绝。