A.2. 比较条目
ldapcompare 检查条目,以查看指定的条目或条目是否包含特定值的属性。例如,检查条目是否具有
sn
值 Smith:
# ldapcompare -D "cn=Directory Manager" -W -p 389 -h server.example.com -x sn:smith uid=bjensen,ou=people,dc=example,dc=com comparing type: "sn" value: "smith" in entry "uid=bjensen,ou=people,dc=example,dc=com" compare FALSE ldapcompare -D "cn=Directory Manager" -W -p 389 -h server.example.com -x sn:smith uid=jsmith,ou=people,dc=example,dc=com comparing type: "sn" value: "smith" in entry "uid=jsmith,ou=people,dc=example,dc=com" compare TRUE
compare 属性可以通过三种方式之一指定:
- 直接在命令行中传递的单个 attribute:value 语句
sn:Smith
- 直接在命令行中传递的单个 attribute::base64value 语句,用于
jpegPhoto
或验证证书或 CRL 等属性jpegPhoto:dkdkPDKCDdko0eiofk==
- 一个 attribute:file 语句,指向包含属性比较值列表的文件,脚本则通过列表迭代
postalCode:/tmp/codes.txt
比较操作本身必须针对特定的条目或一组条目运行。单个条目 DN 可以通过命令行传递,也可以使用
-f
选项指定要比较的 DN 列表。
例 A.1. 将一个属性值与一个条目进行比较
attribute-value 比较和 DN 均通过脚本传递。
ldapcompare -D "cn=Directory Manager" -W -p 389 -h server.example.com -x sn:smith uid=jsmith,ou=people,dc=example,dc=com comparing type: "sn" value: "smith" in entry "uid=jsmith,ou=people,dc=example,dc=com" compare TRUE
例 A.2. 比较文件中的列表属性值
首先,创建一个可能的
sn
值的文件。
jensen johnson johannson jackson jorgenson
然后,创建条目列表来比较值。
uid=jen200,ou=people,dc=example,dc=com uid=dsj,ou=people,dc=example,dc=com uid=matthewjms,ou=people,dc=example,dc=com uid=john1234,ou=people,dc=example,dc=com uid=jack.son.1990,ou=people,dc=example,dc=com
然后运行脚本。
# ldapcompare -D "cn=Directory Manager" -W -p 389 -h server.example.com -x sn:/tmp/surnames.txt -f /tmp/names.txt comparing type: "sn" value: "jensen" in entry "uid=jen200,ou=people,dc=example,dc=com" compare TRUE