为什么我的目录zsh-expansion和filter-combo不起作用?

时间:2018-09-23 18:31:30

标签: shell grep find zsh

#!/usr/bin/zsh

zparseopts -D -E -- p:=p -path+:=p r:=regex -regex:=regex gi:=gitignore -gitignore:=gitignore

PATH=/my/path:/stuff

GI=("${(@f)$(cat $gitignore[2] | sed '/^#/ d')}")

R=("${${(@f)$(find $p[2] -type f -regex $regex[2])}:%GI[@]}")

echo $R

#echo ${(z)R} | grep -v -F ${(z)GI} -

我正在尝试创建自己的预定义find变体,该变体使用名称参数查找不在指定的.gitignore文件/文件夹中的所有内容。

我发现#以及相反的%模式匹配扩展都可以完成这项工作。 但是,它不起作用。老实说,我很少了解这些文档,因为我对shell脚本很陌生。

有没有简单的方法可以使这项工作?

我的另一种方法是使用grep,如下所述,这给我带来了错误,因为我的列表条目没有被视为字符串,而且我找不到合适的字符串扩展。

帮助表示赞赏。

用法示例: seek -p ~/git/prudencss/angular -r .*component.* -gi ~/git/prudencss/angular/.gitignore

0 个答案:

没有答案