我有两条路径,一条是另一条/foo/bar/
和/foo/bar/baz/gig
的一部分。我想要提取的路径是baz/gig
,即文件与目录的相对路径。
答案 0 :(得分:5)
使用file-relative-name
:
(file-relative-name "/foo/bar/baz/gig" "/foo/bar/") ; => "baz/gig"
在“相对文件名”下的Elisp手册中记录。
答案 1 :(得分:0)
您还可以使用f
第三方文件操作库。 f-relative
就是您所需要的。
(f-relative "/a/b/c/d/e/file.txt" "/a/b/") ; "c/d/e/file.txt"
(f-relative "/a/b/c/d/e/file.txt" "/a/b") ; "c/d/e/file.txt"