在emacs lisp中如何将字符串附加到我不想打开的文件中?

Hon*_*hen 8 emacs elisp

我需要一个字符串S(属于无缓冲区)附加到一个特殊文件F,但由于我希望这个操作尽可能少的时间,我不想F打开作为缓冲区.

AFAIK,在emacs中有一个内置函数调用write-region,但这需要将内容写入F其中一个缓冲区(在我的情况下,不能保证S应该是这样的字符串).我该怎么做?

Ste*_*fan 17

(write-region <STRING> nil <FILENAME> 'append)


Lin*_*cer 6

你为什么不尝试这样的事情:

(defun my-append-string-to-file (s filename)
  (with-temp-buffer
    (insert s)
    (write-region (point-min) (point-max) filename t)))
Run Code Online (Sandbox Code Playgroud)

编辑:显然,正如@Stefan回答的那样,write-region能够将字符串附加到文件中,所以我建议使用他的答案.