emacs 中的 shell 和 eshell 有什么区别?
emacs 中的 eshell (Mx eshell) 和 shell (Mx shell) 有什么区别。两者似乎工作相同,但是当我尝试在 eshell 中运行 su 命令或 sudo 命令时,它会创建一个名为 trap/su root:localhost 的缓冲区。但不要做我作为超级用户想做的工作。
What is the difference between eshell (M-x eshell) and shell (M-x shell) in emacs. Both seems to work same but when i try to run su command or sudo command in eshell then it create a buffer named tramp/su root:localhost. but don't do the work which i want to do as super user.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
简而言之
eshell
是一个 shell 模拟器(用 Emacs-Lisp 编写),而shell
是sh
或您使用的任何(外部)系统 shell 的接口重新使用。eshell
的行为应与您熟悉的大多数“Bourne 风格”shell 类似,但不具有shell
所具有的外部依赖性。因此,它可以在任何运行 emacs 的系统上运行。In short
eshell
is a shell emulator (written in Emacs-Lisp), whileshell
is an interface tosh
or whatever (external) system shell you're using.eshell
should behave like most "Bourne-style" shells that you're familiar with, but does not have the external dependency thatshell
has. Thus, it can be run on any system that runs emacs.