|
0 / 0 / 0
Регистрация: 20.11.2018
Сообщений: 24
|
|
Выборка компов в сравнении12.03.2020, 16:55. Показов 2719. Ответов 27
Метки нет (Все метки)
Привет, мой находчивый помощник!
У меня к тебе (к вам) вопрос: Есть много компов в AD. Все они называются по определенному шаблону. В имени присутствует буква и число, типа A1, A2, A3 ..... до бесконечности. Используя конструкцию типа: Get-ADComputer -Filter {Name -like "A*"} | Select-Object -last 1 | Format-Table Name мне выводится последний по счётчику. Так вот, мне нужно чтобы он мне вываливал все пропуски, т.е. если между A555 и A557 нет имени A556 (удален, отсутствует, не важно), чтобы показал. И так по всему массиву. Что-то голову поломал уже. Спасибо, друг!
0
|
|
| 12.03.2020, 16:55 | |
|
Ответы с готовыми решениями:
27
Не срабатывает выборка при сравнении по датам
|
|
㊙️
1316 / 244 / 57
Регистрация: 10.08.2018
Сообщений: 574
|
|||||||
| 13.03.2020, 02:24 | |||||||
0
|
|||||||
|
0 / 0 / 0
Регистрация: 20.11.2018
Сообщений: 24
|
||||||
| 13.03.2020, 09:47 [ТС] | ||||||
|
Привет! Что-то не Алёша твоё предложение, просто висит и ничего не происходит
![]() Сделали так, все работает:
0
|
||||||
|
|
||||||
| 13.03.2020, 11:00 | ||||||
|
dezhnevo,
Почему не Compare-Object
0
|
||||||
|
㊙️
1316 / 244 / 57
Регистрация: 10.08.2018
Сообщений: 574
|
|||||||||||||||||
| 13.03.2020, 11:43 | |||||||||||||||||
a2, a4, a6, a9, a10, a14, b7Пропущены: a1, a3, a5, a7, a8, a11, a12, a13Тест кода Averson
ОТСУТСТВУЮТ ПК:![]() Тест кода dezhnevo
1![]() Не найдены: 8,12,13 Тест кода v_svitere
1
0
|
|||||||||||||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
|||||||
| 13.03.2020, 12:32 | |||||||
|
Там, конечно, у dezhnevo есть ошибки, но если сравнивать производительность методов:
foreach, наиболее производительный, в отличии от Foreach-Object и Compare-Object
2
|
|||||||
|
0 / 0 / 0
Регистрация: 20.11.2018
Сообщений: 24
|
|
| 13.03.2020, 12:58 [ТС] | |
|
Так, ща буду пробовать....
0
|
|
|
Заблокирован
|
||
| 13.03.2020, 14:20 | ||
$b|%{} - это же по сути foreach($_ in $b){} , а разница в скорости и правда есть, аж в ~три раза с каждым методом Загадка...YuS_2, спасибо за информацию!
0
|
||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
||
| 13.03.2020, 17:47 | ||
|
классический foreach дает преимущество за счет потребления памяти и кроме того, там есть зависимость от типа данных, от операций производимых с ними и от объема данных тоже есть зависимость. При некоторых условиях, Foreach-Object может работать быстрее стандартного цикла. Кроме того, foreach-object работает сразу же с поступающими данными по конвейеру, а цикл foreach будет ожидать получение всей коллекции... собственно, поэтому последний и потребляет больше ресурсов. Ну и ещё отличие цикла в том, что он "не умеет" передавать данные по конвейеру, а это заставляет использовать посредников в виде массивов, что в случае с объемными данными, естественно, приведет к большому расходу памяти... как-то так... Кстати, в данном, конкретном случае, относительно темы топика, методы работы с циклами, можно ещё ускорить, если оптимизировать работу с массивами, т.е. вместо пересоздания массивов операцией +=, сразу создавать конечный массив (нам ведь известно число компьютеров, ну или хотя бы конечный номер) и его заполнять, эта операция гораздо производительнее.
0
|
||
|
㊙️
1316 / 244 / 57
Регистрация: 10.08.2018
Сообщений: 574
|
||||||||
| 13.03.2020, 23:52 | ||||||||
0
|
||||||||
|
0 / 0 / 0
Регистрация: 20.11.2018
Сообщений: 24
|
|||||||
| 14.03.2020, 11:27 [ТС] | |||||||
|
Чёт не понял, как это он какие-то выбирает, а какие-то оставляет. В моем случае, проверил, ничего не пропускает. Странная логика работы
Добавлено через 1 минуту
0
|
|||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
||||||||
| 14.03.2020, 11:46 | ||||||||
|
Не претендуя на истину в последней инстанции, я бы сделал так:
Вот, последний по порядку номер из имени (там ведь числовая нумерация, правильно?), мы и можем принять за конечное число компьютеров. Нет?
0
|
||||||||
|
|
||||||
| 14.03.2020, 12:27 | ||||||
Сообщение было отмечено YuS_2 как решение
Решение
Мне если, честно лень замерять, но есть еще LINQ-вариант)
1
|
||||||
|
6685 / 2277 / 347
Регистрация: 10.12.2013
Сообщений: 7,858
|
|
| 14.03.2020, 13:05 | |
|
я сильно не всматривался, но где граничное условие для правого конца последовательности ?
последнее значение из Get-ADComputer -Filter {Name -like "A*"} таковым явно являться не может. Добавлено через 4 минуты это - первое. а второе, зачем вообще это надо ? ( вопрос автору Темы)
0
|
|
|
㊙️
1316 / 244 / 57
Регистрация: 10.08.2018
Сообщений: 574
|
||||||||||||
| 14.03.2020, 16:53 | ||||||||||||
Method Time(ms)Добавлено через 27 минут По итогу всех наших исследований, для себя я вижу вот таким топ вариант решения:
+=
0
|
||||||||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
|||||
| 16.03.2020, 00:24 | |||||
0
|
|||||
|
|
||||||
| 16.03.2020, 08:05 | ||||||
0
|
||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
|||
| 16.03.2020, 10:12 | |||
|
Кроме того, такой момент:
0
|
|||
|
|
|
| 16.03.2020, 10:35 | |
|
У меня пара вопросов, к тому действу к которому тут обычно сводится.
Как сообщество мы можем определить критерии решения? В каких рамках судить о постановке задачи, исключительно в тех условиях, что привел автор? или расширяя их до гипотетических допущений... и насколько данные допущения имеют смысл. Если критерием качества скрипта ставить скорость обработки, и допустить, что имена компов будут только prefix(num) тогда substring думаю будет всегда выгоднее regex... и .foreach() будет быстрее чем конвейер... К чему стремимся?
0
|
|
| 16.03.2020, 11:47 | ||
|
Не по теме:
Мои приоритеты примерно такие) 1. Алгоритм - понятный и продуманный, без лишних действий 2. Грамотное оформление 3. Быстродействие На практике, примерно из 400 с лишним задач, оптимизацию по быстродействию пришлось проводить ну, наверное раз 5-6 Все остальные решения, отрабатывают предельно быстро, насколько это позволяет сама задача - за счет алгоритма и правильных инструментов. Пытаться сэкономить миkлисекунды, когда у тебя командлет get-messagetrackinglog отрабатывает 10 минут - такое себе :)
0
|
||
| 16.03.2020, 11:47 | |
|
Помогаю со студенческими работами здесь
20
Выборка из Combobox, причем выборка должна быть частичной Wi-fi на 30 компов Вопрос о сравнении Выборка из таблици товаров по самому максимальному рейтингу магазина, рейтинг мазаницов если есть одиноковые, выборка уже по минимальной цене Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|