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

How to quit after run IO.read(:stdio, :all) in the Elixir iex?

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

TL;DR: 使用 ^G 后接 ji [nn]c [nn].


erliex 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 ▶

旁注: 在所有终端中正确的 EOF 终止应该是 ^D。老实说,我不知道为什么它在 erl/iex 控制台中无法按预期工作。