假设我的工作文件夹为 ~/X/
,编译后的二进制文件位于 ~/X/bin/
我通常首先像这样获取 objdump:
objdump -D ~/X/bin/bin1 > bin1.list
然后emacs bin1.list&
如何在.emacs
中分配一个函数来在Emacs中打开一个临时缓冲区并直接在其中的二进制文件上执行objdump -D
?
最佳答案
当然,默认情况下命令 M-! (shell-command
) 将 shell 输出输出到默认输出缓冲区。
M-! objdump -D/bin/ls
如果你想改变输出缓冲区的名称,你可以通过一些 elisp 调用 shell-command
:
(shell命令“objdump -D/bin/ls”“ls.dump”)
或
C-x C-w (write-file
) - 将 shell 输出缓冲区写入文件
编辑:
在可用的情况下抓取文件或提示用户的示例
(defun my-objdump-file (&optional file)
(interactive)
(unless file
(setq file (expand-file-name (or (thing-at-point 'filename)
(read-file-name "File: ")))))
(when file
(shell-command (concat "objdump -D "
file)
"*Objdump Output*")))
关于emacs - 来自 emacs 内部的 objdump,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21104035/