酷代码 AI
菜单
服务商

使用elisp,实现在dired里面标记文件之后调用zip命令把标记的文件目录压缩成zip并且转移到指定目录下

以下是一个使用 Emacs Lisp(`elisp`)在 `dired` 模式下标记文件后,调用 `zip` 命令将标记的文件和目录压缩为 `zip` 并转移到指定目录的示例代码: ```elisp (require 'dired) (defun my-dired-zip-and-move () "Zip marked files and move the zip to a specified directory." (interactive) (let* ((marked-files (dired-get-marked-files)) (zip-filename (concat (make-temp-name "archive") ".zip")) (target-dir "/your/target/directory/")) (call-process "zip" nil nil nil zip-filename marked-files) (rename-file zip-filename (concat target-dir (file-name-nondirectory zip-filename))))) ``` 在上述代码中,您需要将 `"/your/target/directory/"` 替换为您实际想要转移 `zip` 文件的目标目录。然后,您可以将这段代码添加到您的 Emacs 配置文件(例如 `.emacs` 或 `init.el` )中,并在 `dired` 模式下通过执行 `M-x my-dired-zip-and-move` 来调用该函数。 此代码依赖于系统中可用的 `zip` 命令,并且需要适当的权限来执行文件操作。 [2024-11-06 19:21:41 | AI写代码神器 | 306点数解答]

相关提问
实用工具查看更多
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]
数独游戏 [娱乐类]
经典推箱子 [娱乐类]
AI摸鱼五子棋 [娱乐类]