Ale*_*lex 8 emacs sh org-mode org-babel
我试图捕获difforg-babel 的输出,但由于某种原因它不起作用.对于文件
1
a b c
Run Code Online (Sandbox Code Playgroud)
2
a c b
Run Code Online (Sandbox Code Playgroud)
diff 1 2 从命令行调用返回
1c1
< a b c
---
> a c b
Run Code Online (Sandbox Code Playgroud)
但是对于org-babel,没有:
#+begin_src sh
diff 1 2
#+end_src
#+RESULTS:
Run Code Online (Sandbox Code Playgroud)
迷你缓冲区读取"代码块产生无输出".org-babel错误输出窗口为空.其他命令,如ls按预期显示输出.我不熟悉org-babel.
我尝试过使用:results output verbatim,没有变化.我也:results output replace按照这里的建议尝试使用.没有帮助.
我可以重现你的问题(在OSX上).
奇怪的是执行babel块会打开Org-babel错误输出缓冲区,好像有什么东西要去STDERR.
如果在diff之后添加任何其他输出,结果将显示OK.例如,
#+begin_src sh :results output
diff 1 2
echo
#+end_src
Run Code Online (Sandbox Code Playgroud)
如果将diff的结果强制为stdout,结果也会显示:
#+begin_src sh :results output
diff 1 2 | cat
#+end_src
Run Code Online (Sandbox Code Playgroud)