|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] BASH+Ldapsearch - поиск включенных и отключенных учетных записей |
|
Любой язык - [решено] BASH+Ldapsearch - поиск включенных и отключенных учетных записей
|
Старожил Сообщения: 415 |
Всем привет!
Стоит задача: скриптом bash в определенных OU в домене искать отключенные и включенные учетные записи. Вот таким скриптом удалось выдернуть количество отключенных учеток. Поиск отключенных
echo "start"
EEC=$(ldapsearch -x -H ldap://192.168.1.110 -D 'test\admin' -w Qwerty1234 -b 'OU=IS,DC=test,DC=local' '(&(objectCategory=person)(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=2))'| grep 'dn' | wc -l) echo "disabled accounts = "$EEC Никак теперь не пойму, как таким же способом найти только включенные учетки? Перед userAccountControl ставлю восклицательный знак, чтобы сделать отрицание NOT, и после этого скрипт не работает. поиск включенных
echo "start"
EEC=$(ldapsearch -x -H ldap://192.168.1.110 -D 'test\admin' -w Qwerty1234 -b 'OU=IS,DC=test,DC=local' '(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))'| grep 'dn' | wc -l) echo "disabled accounts = "$EEC Возвращается такой ответ: start ldap_search_ext: Bad search filter (-7) disabled accounts = 0 |
|
Отправлено: 13:53, 14-01-2022 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Решил вопрос. Надо отрицание тоже брать в скобки. Получилось в итоге так
поиск включенных
echo "start"
EEC=$(ldapsearch -x -H ldap://192.168.1.110 -D 'test\admin' -w Qwerty1234 -b 'OU=IS,DC=test,DC=local' '(&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))'| grep 'dn' | wc -l) echo "disabled accounts = "$EEC |
Отправлено: 14:15, 14-01-2022 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Помогите еще пожалуйста с поиском в разных OU. Нужно искать в нескольких OU и выводить в итоговый суммированный результат.
|
Отправлено: 15:18, 14-01-2022 | #3 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Попробовал сделать разными путями. Одно из решений - использовать конструкцию $((переменная+переменная2))
Сложение
echo "start"
EEC=$(ldapsearch -x -H ldap://192.168.1.110 -D 'test\admin' -w Qwerty1234 -b 'OU=IS,DC=test,DC=local' '(&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))'| grep 'dn' | wc -l) echo "disabled accounts = "$EEC echo "start2" EEC2=$(ldapsearch -x -H ldap://192.168.1.110 -D 'test\admin' -w Qwerty1234 -b 'OU=IS2,DC=test,DC=local' '(&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))'| grep 'dn' | wc -l) echo "disabled accounts = "$EEC2 res=$((EEC+EEC2)) echo $res Но это не работает - возвращается ошибка ")syntax error: invalid arithmetic operator (error token is " |
Отправлено: 12:31, 17-01-2022 | #4 |
fascinating rhythm Сообщения: 6666
|
Профиль | Отправить PM | Цитировать |
|
------- Отправлено: 13:05, 17-01-2022 | #5 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать Цитата DJ Mogarych:
Поменял формат на Unix, удалил все лишние символы и все заработало. В итоге эти конструкции оказались рабочими: Первая конструкция res=$((EEC+EEC2)) echo $res Вторая конструкция res=$(($EEC+$EEC2)) echo $res |
|
Отправлено: 14:01, 17-01-2022 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2012 R2 - Блокировка учетных записей | SkyNezu | Windows Server 2012/2012 R2 | 2 | 25-05-2017 14:10 | |
VBS/WSH/JS - Контроль учетных записей | datafile4 | Скриптовые языки администрирования Windows | 0 | 27-06-2014 15:15 | |
кешь Учетных записей | Sluggard | Microsoft Windows NT/2000/2003 | 7 | 21-05-2006 13:43 | |
Создание учетных записей | Pauletto | Microsoft Windows 2000/XP | 7 | 30-04-2006 00:14 | |
Отображение учетных записей | Yoghurt | Microsoft Windows 2000/XP | 7 | 12-02-2004 23:54 |
|