我想让一个 shell 脚本使用“ldapsearch”来比较文本文件中列出的 UID 和远程 LDAP 目录中的 UID。
我不是 shell 脚本专家,如果有任何帮助,我将不胜感激。以下循环遍历作为参数给出的文本文件,但是当我的文本文件中的 UID 在 LDAP 中不存在时,我需要回显。
#!/bin/sh
for i in `cat $1`;
do ldapsearch -x -H ldaps://ldap-66.example.com -b ou=People,dc=crm,dc=example,dc=com uid=$i | grep uid: | awk '{print $2}';
echo $i
done
最佳答案
试试:
#!/bin/sh
url="ldaps://ldap-66.example.com"
basedn="ou=People,dc=crm,dc=example,dc=com"
for i in `cat $1`; do
if ldapsearch -x -H "$url" -b "$basedn" uid=$i uid > /dev/null
then
# Do nothing
true
else
echo $i
fi
done
关于shell - 如何使用 ldapsearch 检查 UID 是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11752516/