Я спорил с чем-то я как ожидаюсь, буду просто ....Баша поиск LDAP - переменный в качестве фильтра
Я хочу для поиска менеджера пользователей из LDAP, а затем получить менеджер электронной почты и имя Сэма.
я ожидал, чтобы быть в состоянии получить сп для менеджера из LDAP, как это:
manager=$(/usr/bin/ldapsearch -LLL -H ldap://company.ads -x -D [email protected] -w password -b ou=employees,dc=company,dc=ads sAMAccountName=employee1 | grep "manager:" | awk '{gsub("manager: ", "");print}' | awk 'BEGIN {FS=","}; {print $1, $2 }')
, что дает мне сп так:
CN=manager,\ Surname
Теперь, когда я запускаю другой запрос, как это:
/usr/bin/ldapsearch -LLL -H ldap://company.ads -x -D [email protected] -w password -b ou=employees,dc=company,dc=ads $manager
Я получаю плохой фильтр поиска (-7) echo копия команды, вставьте ее, я получаю запись обратно ... .
Ive попробовал несколько вариантов на этом, может ли кто-нибудь увидеть, что им не хватает?
Спасибо.
Ive добавил кавычки, но все равно получаю тот же результат, плохой фильтр поиска, эхо и мимо него снова работает. это должно быть связано с этим, где-то плохое. –
Действительно ли '$ manager' действительно содержит эту обратную косую черту? Обратные косые черты не обрабатываются при расширении переменных, поэтому они будут отправлены буквально в качестве фильтра. – Barmar
да, он находится в переменной, он возвращается из объявления, когда я получаю CN, поэтому кажется, что моя проблема - это \ –