如何区分目录和文件

时间:2013-11-13 20:25:01

标签: emacs elisp

有谁能请举例说明如何区分文件和目录? file-readable-pfile-exists-p都会返回t作为有效目录和有效文件 - 例如,/tmp/tmp/foo.txt会产生相同的结果。

我想写一个函数说:

(cond
  ( (filename-or-directory is a directory)
    . . . do ABC )
  ( (filename-or-directory is a file)
    . . . do XYZ ) )

2 个答案:

答案 0 :(得分:4)

您需要file-directory-p。它为目录返回t。

答案 1 :(得分:1)

如果您大量操作文件和文件路径,我建议使用 Mx package-install RET f.el文件和目录API > f RET 。它有一个你需要的谓词f-directory?和其他许多。