在Lisp中以独立于实现的方式移动文件的最佳方法是什么例如,我有一个图像文件:

(setq oldpath #P"SERVER:PICTURES;TEMP;PHOTO.PNG")

我想把它从TEMP目录移到PICTURES目录这似乎有效:
(setq newpath
  (make-pathname
    :host (pathname-host oldpath)
    :directory (butlast (pathname-directory oldpath))
    :name (pathname-name oldpath)
    :type (pathname-type oldpath)))

(rename-file oldpath newpath)

但有没有更优雅的方式呢?
谢谢,大卫

最佳答案

我通常使用:

(make-pathname :defaults old-path
               :directory (butlast (pathname-directory oldpath)))

:defaults参数确保复制旧路径名的所有相关部分。

关于lisp - 如何使用重命名文件在Lisp中移动文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30578419/

10-13 03:41