使用文件存储 ldapsearch 查询

使用文件存储 ldapsearch 查询

我必须查询大约 10,000 个用户的属性。我有一个适用于单个用户的 ldapsearch 查询。以下是相关部分,我在其中搜索objectGUID用户的属性abc123

ldapsearch -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub "cn=abc123" -L objectGUID 

我想将所有查询放在一个文件中,然后使用该-f myqueries.txt选项。由于此查询将通过 SSL 执行,因此我想避免运行 10k 单独的 ldapsearch 时遇到的 10k SSL 协商。

我尝试使用如下文件:

(cn=abc123)
(cn=lmn456)
(cn=xyz789)

使用这个修改后的命令行:

ldapsearch -v -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub -f myqueries.txt -L objectGUID 

但我总是收到Bad search filter错误。

我无法确定这是哪个版本的 ldapsearch。它运行在自定义 Linux 发行版上。

如何使用该-f选项让 ldapsearch 使用从文件读取的查询?

答案1

文件看起来应该像这样:

abc123
lmn456
xyz789

并命令如下:

ldapsearch -v -h somehost.com -D "CN=valid_user,DC=valid_everything" -q -b "OU=valid_ou,DC=valid_dc" -s sub -f myqueries.txt "(cn=%s)" -L objectGUID 

-f 之后给出的文件只能保存查询的参数,而不能保存查询本身。

相关内容