Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Elixir iex中运行IO.read(:stdio,:all)后退出?_Io_Elixir_Eof_Elixir Iex - Fatal编程技术网

如何在Elixir iex中运行IO.read(:stdio,:all)后退出?

如何在Elixir iex中运行IO.read(:stdio,:all)后退出?,io,elixir,eof,elixir-iex,Io,Elixir,Eof,Elixir Iex,我需要测试一些输入数据流,并使用“IO.read”,但在输入数据后,我无法退出此模式,CTRL-Z/X/C/D没有帮助(它会终止整个iex)。那么,对于这种模式,如何使用正确的EOF命令呢? 谢谢 TL;DR:使用^G后跟j、i[nn]和c[nn] 在erl和iexshell中,您总是可以^G进入“用户切换命令”模式。键入h以获取帮助 iex|1 ▶ IO.read :stdio, :all ^G User switch command --> j 1* {erlang,a

我需要测试一些输入数据流,并使用“IO.read”,但在输入数据后,我无法退出此模式,CTRL-Z/X/C/D没有帮助(它会终止整个iex)。那么,对于这种模式,如何使用正确的EOF命令呢? 谢谢

TL;DR:使用
^G
后跟
j
i[nn]
c[nn]


erl
iex
shell中,您总是可以
^G
进入“用户切换命令”模式。键入
h
以获取帮助

iex|1 ▶ IO.read :stdio, :all

^G
User switch command
  --> j
    1* {erlang,apply,[#Fun<Elixir.IEx.CLI.1.96155272>,[]]}
  --> i 1
  --> c 1
{:error, :interrupted}

iex|2 ▶
iex | 1▶ IO.read:stdio,:all
^G
用户切换命令
-->j
1*{erlang,apply,[#Fun,[]}
-->i 1
-->C1
{:错误,:中断}
iex | 2▶

旁注:所有终端中正确的
EOF
终止应为
^D
。我真的不知道为什么它不能在
erl
/
iex
控制台中正常工作;DR:使用
^G
后跟
j
i[nn]
c[nn]


erl
iex
shell中,您总是可以
^G
进入“用户切换命令”模式。键入
h
以获取帮助

iex|1 ▶ IO.read :stdio, :all

^G
User switch command
  --> j
    1* {erlang,apply,[#Fun<Elixir.IEx.CLI.1.96155272>,[]]}
  --> i 1
  --> c 1
{:error, :interrupted}

iex|2 ▶
iex | 1▶ IO.read:stdio,:all
^G
用户切换命令
-->j
1*{erlang,apply,[#Fun,[]}
-->i 1
-->C1
{:错误,:中断}
iex | 2▶


旁注:所有终端中正确的
EOF
终止应为
^D
。我真的不知道为什么它不能在
erl
/
iex
控制台中正常工作。

对于任何IO读取操作,正确的EOF终止应该是
^D
。显然,由于未知原因,它在
iex
会话中不工作。对于任何IO读取操作,正确的EOF终止应该是
^D
。显然,由于未知原因,它在
iex
会话中不起作用。奇怪的是,这似乎在MacOS 10.13上对我不起作用。在
c1
之后,它不会返回一个值,它只会进入与按
^G
@Dogbert之前相同的状态哦,谢谢你的锐利目光;我复制粘贴了我的一个实验,而不是最后一个成功的。在切换到工作之前,应该先中断工作。已更新。由于所有的输入都进入了您的
IO.read
,因此您的代码有责任以某种方式使这些数据可用。人们可能会使用ETS、代理或类似的工具。奇怪的是,在MacOS 10.13上,这似乎不适用于我。在
c1
之后,它不会返回一个值,它只会进入与按
^G
@Dogbert之前相同的状态哦,谢谢你的锐利目光;我复制粘贴了我的一个实验,而不是最后一个成功的。在切换到工作之前,应该先中断工作。已更新。由于所有的输入都进入了您的
IO.read
,因此您的代码有责任以某种方式使这些数据可用。人们可以使用ETS、代理或类似的工具。