如何使用eshell的`ls -I`(`ls --ignore`)选项?

时间:2015-12-13 04:11:51

标签: emacs eshell

由于我不想看到某些文件,我尝试使用 eshell ls -Ils --ignore选项。

我首先认为它可能表现得像GNU ls --hide选项,但事实并非如此。

看起来 eshell ls 不接受其他参数。

有人可以展示如何使用它吗?

1 个答案:

答案 0 :(得分:0)

Eshell的内置ls是一个lisp函数,您可以通过

检查
which ls
eshell/ls is a compiled Lisp function in ‘em-ls.el’

在您的*eshell*缓冲区中。

eshell的内置ls支持-I--ignore选项,您可以通过

检查
ls --help

在您的*eshell*缓冲区中。

最后,Eshell的内置-I命令的--ignorels选项与GNU的ls具有相同的效果。

但是,使用 eshell的 ls这样的方法是错误的:

ls --ignore="<pattern>"
ls -I"<pattern>"

正确的方法是:

ls --ignore "<pattern>"
ls --ignore "<pattern1>" --ignore "<pattern2>"

eshell ls --ignore对GNU one无效的原因是,

如果将无法识别的选项传递给此命令,则外部 版本“ / bin / ls”将被调用。

BSD的--ignore尚未支持

--hidels