在find
手册页中,概要部分说:
SYNOPSIS
find [-H | -L | -P] [-EXdsx]
[-f path] path ...
[expression]
我想找到当前目录中名称中包含“optimize”的所有文件,所以我使用这个命令:
find -E -f . -iregex ".*optimizing.*"
我认为这符合概要要求,-E
为extended regex
,-f .
为[-f path]
部分
但输出说:
find: -f .: unknown primary or operator
但是如果我删除-f
选项,请运行:find -E . -iregex ".*optimizing.*"
。它将按预期运行。
并且SYNOPSIS
部分遵循正则表达式语法?也就是说,剂量[-EXdsx]
意味着我可以使用该部分-EXdsx
中的任何字符?
这些让我很困惑,让阅读手册对我来说真是太可怕了。
任何帮助将不胜感激!
答案 0 :(得分:1)
如果仔细检查概要
SYNOPSIS
find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
表示-f path
应该跟随另一个path
,或者您可以省略-f
。
语法基于https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form