我正在尝试使用以下命令find
过滤一些文件:grep
find . -type f -exec grep -q --exclude=*.{cpp,gradle,java,ttf,txt,xml,md} . {} \; -and -print
有趣的是:通过服务器提示符中的命令可以正常工作,但通过 Shell 构建步骤则不行。因为如果我删除{}
文件类型周围的 并保留 eg,--exclude=*.java
它就可以正常工作。
我的问题是:
- 这是怎么回事?
- 我可以用正则表达式中的另一种方式来做到这一点吗?
答案1
问题是我正在测试服务器,bash
但我的 Jenkins 配置为使用sh
。一旦我修复此配置,旨在运行的 Shell 脚本就/bin/bash
可以正常工作。