小编Cra*_*aig的帖子

不要为虚假目标执行配方

考虑到PHONY目标的GNU make手册中的这段摘录:

完成后,make clean' will run the commands regardless of whether there is a file named清理'.

为什么我没有看到我的食谱被执行,事件虽然在调试输出中说它必须重新制作这些目标?这是一个示例makefile来演示该问题:

all:
    @echo Rule to build 'all'

.PHONY: clean a.clean b.clean
clean: a.clean b.clean
    @echo Cleaning toplevel

%.clean:
    @echo Cleaning $*
Run Code Online (Sandbox Code Playgroud)

这是输出 - 注意没有提到 Cleaning $*

make: Entering directory `/tmp'
Cleaning toplevel
make: Leaving directory `/tmp'
Run Code Online (Sandbox Code Playgroud)

以下是来自的输出-d:

Considering target file `clean'.
 File `clean' does not exist.
  Considering target file `a.clean'.
   File `a.clean' does not exist.
   Finished prerequisites of target file …
Run Code Online (Sandbox Code Playgroud)

makefile

3
推荐指数
1
解决办法
276
查看次数

用于选择具有特定成员的组的 LDAP 搜索过滤器

我正在尝试设计一个搜索过滤器来提取具有特定成员的组。这是有效的,因为它会拉动所有组:

(&(objectClass=group)(member=*))
Run Code Online (Sandbox Code Playgroud)

但这并没有,尽管当我查看完整的组列表时,“成员”列表包含一个与表达式匹配的条目:

(&(objectClass=group)(member=*MySurname\\, MyForename*))
Run Code Online (Sandbox Code Playgroud)

这甚至不返回任何结果:

(&(objectClass=group)(member=*MyForename*))
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎样才能让它工作?

ldap ldap-query

3
推荐指数
1
解决办法
1万
查看次数

Google API 客户端在构建 drive v2 API 时真的很慢

驱动API服务的构建需要很长时间(10+秒)。我尝试酸洗服务并重新加载它,但没有任何乐趣。有人知道如何让这个东西在本地缓存吗?

debug("Building Google Drive service")
from apiclient.discovery import build
self._service = build('drive', 'v2', http = http)

debug("Initialisation complete")
Run Code Online (Sandbox Code Playgroud)

google-drive-api

2
推荐指数
1
解决办法
973
查看次数

解决python正则表达式错误^ H ^ H ^ H ... ahem ...需要错误

我有一些代码正在生成正则表达式.以下表达式实际上是:

^(?:\s*((exclude|include|hide|show|protect|risk|dir-merge|merge)),\s*((-|+|H|S|P|R|:|.))\s*(\S+)|\s*,?\s*((-|+|H|S|P|R|:|.))\s*(\S+)|\s*((exclude|include|hide|show|protect|risk|dir-merge|merge))\s*(\S+))$
Run Code Online (Sandbox Code Playgroud)

它看起来很复杂,但它本质上意味着匹配以下内容,其中包括文件中的行:

dir-merge, :    /some/file
   merge,   . /some/other/file
. /another/file
 , :    /yet/another/file
Run Code Online (Sandbox Code Playgroud)

因此\s*导致Python正则表达式编译错误的匹配.

有没有更好的方法在单个表达式中匹配这些组合而不匹配块nothing

回答

除了答案之外,值得一提的是我通过形成以下表达式来解决这个问题:

^(?:\s*(exclude|include|hide|show|protect|risk|dir-merge|merge),\s*([-+HSPR:.])\s*(\S+)|\s*,?\s*([-+HSPR:.])\s*(\S+)|\s*(exclude|include|hide|show|protect|risk|dir-merge|merge)\s*(\S+))$
Run Code Online (Sandbox Code Playgroud)

微小的差异是从过渡(-|+|H|S|P|R|:|.)([-+HSPR:.]).方括号具有转义字符的效果,阻止了|+表达式匹配nothing.

python regex

2
推荐指数
1
解决办法
71
查看次数

标签 统计

google-drive-api ×1

ldap ×1

ldap-query ×1

makefile ×1

python ×1

regex ×1