1

我需要一个find参数:

  1. 列出所有不在文件夹中的./bootstrap
  2. .js排除以 结尾但不以结尾的文件.min.js
  3. .css排除以 结尾但不以结尾的文件.min.css

最好在一个独特的命令中。

我一直在看-pruneand -regex,但似乎没有一个工作。zip作为构建过程的一部分,我正在使用它来输入命令以压缩所有内容。

4

2 回答 2

4

像这样的东西应该工作:

find . \( -iname "*.js" -or -iname "*.css" \) -not -iname "*.min.js" -not -iname "*.min.css" | grep -v '^\./bootstrap'

您也可以使用find'-prune标志来执行此操作,但我认为语法比简单的grep.

另请注意,我正在使用-iname而不是-name- 这使字符串不区分大小写,这通常是我所做的,以防我的源代码树中包含来自 Windows 的文件,但请随意使用更适合您情况的文件。

于 2013-06-28T21:34:16.687 回答
1

这个怎么样?

find . ! \( -name bootstrap -prune -o -name '*.js' ! -name '*.min.js' -o -name '*.css' ! -name '*.min.css' \)

如果您只想保留文件,请-type f在末尾添加。

于 2013-06-28T21:37:29.210 回答