Jika saya memulai emacs -Qdan M-x eshellmenjalankan emacs 24.5.2 , maka jalankan:
$ which rm
eshell/rm is a compiled Lisp function in `em-unix.el'
Saya mendapatkan versi eshell. Tetapi jika saya C-h v eshell-prefer-lisp-functionsmelihat nilainya nihil. Namun dokumentasi menyatakan:
Jika Anda lebih suka menggunakan perintah bawaan daripada perintah eksternal, atur fungsi eshell-prefer-lisp-t ke t.
Apakah ini bug? Saya pikir dokumen mungkin mundur jadi saya mencoba mengatur variabel t, tetapi perilaku tetap sama, saya terus mendapatkan implementasi eshell daripada versi di / bin.
$ *rm filename. Memulai *akan membuat eshelllompatan mencari perintah bawaan. Metode ini berguna untuk mem-bypass perintah bawaan, apa pun pengaturan yang diinginkan .
which. Jika Anda melakukannyarm --version, apa yang Anda dapatkan?