emacs - 来自 emacs 内部的 objdump

标签 emacs elisp objdump

假设我的工作文件夹为 ~/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/

相关文章:

Emacs Lisp - 如何处理函数返回字符串或 nil 的边缘情况?

具有 C++ 作用域的 Emacs 点符号

emacs - 如何在调用 mode-hook 之前加载 dir-locals 中定义的变量?

emacs - Emacs 中的代码完成键绑定(bind)

emacs - Elisp 本身有 flymake 模式吗?

emacs - 当磁盘上的文件发生更改时,如何让 Emacs 自动刷新所有缓冲区?

linux - Linux 动态共享库的 .text 部分

c - 如何读取 objdump 输出的汇编代码

emacs - 我怎样才能改进这个 Emacs lisp 功能?

python 崩溃了;如何解码 dmesg 日志中的段错误?