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.
Asked
Active
Viewed 2,048 times
7
-
Sorry, not a programming question, please try http://superuser.com/ . (I didn't downvote your question). Good luck. – shellter Jan 18 '12 at 17:49
1 Answers
17
In short eshell
is a shell emulator (written in Emacs-Lisp), while shell
is an interface to sh
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 that shell
has. Thus, it can be run on any system that runs emacs.

harpo
- 41,820
- 13
- 96
- 131
-
Thanks for this clarification. Please answer me another question which i have described in question body. – MutantMahesh Jan 19 '12 at 07:19
-
2@msankhala, eshell uses several builtin commands, sudo is one of them. To use system's sudo, try `*sudo command`. – Mirzhan Irkegulov Mar 19 '12 at 09:43