求助去上层目录或截取字符串的写法

现在有一个小功能需求求助下

我使用(buffer-file-name)可以得到当前buffer的路径和文件名称,返回一个字符串,假设为:

"/a/b/x.el"

使用 (file-name-directory buffer-file-name)可以得到文件的路径,返回一个字符串:

"/a/b/"

现在我想得到的是再上一层的目录,即:"/a/"

有没有这种去上一层目录的函数,或者这种截取字符串的写法怎么写啊,其他语言的话正则很方便,匹配倒数第二个 / ,把后面的内容干掉就行。可惜我不咋会 elisp ,而且英语奇差,搜了一会看的云里雾里的。 求个帮助 ^v^

(file-name-directory (directory-file-name "/a/b/"))这样行吗

3 个赞

对对对对,就是这种效果,是我想的复杂了 ,多谢多谢 :grinning:

开一个 eshell,想复制啥路径就打 pwd 完事。