|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
||||||
Список по маске21.01.2019, 14:48. Показов 13496. Ответов 51
Метки нет (Все метки)
Как вывести список содержимого в директории, исключив из папки фалы '*.log','*.log*' и всё содержащее внутри папки temp, включая её саму?
0
|
||||||
| 21.01.2019, 14:48 | |
|
Ответы с готовыми решениями:
51
Создать список файлов по маске Список файлов по заданной маске Вывести список файлов по маске |
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||||||||||
| 22.01.2019, 17:16 | ||||||||||||||
И если в массиве есть 'c:\1\2' и 'c:\1\2\3', то мы будем сначала рекурсивно обрабатывать каталог '2', а затем каталог '3'? Но ведь при рекурсивной обработке каталога '2', мы уже получили все элементы и из каталога '3'... И если даже именно это вам и нужно, пожалуйста:
0
|
||||||||||||||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
||||||||
| 22.01.2019, 18:23 | ||||||||
|
В справке нет описания нового принципа работы ключа -recurse, зато зачем-то присутствует описание старого, причем логичного принципа работы.
0
|
||||||||
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||||
| 22.01.2019, 18:43 | ||||||||
1. Получает элементы в указанных расположениях и всех дочерних элементах расположений. 2. В PS 3 (и старше), параметр Recurse сработает и в том случае, если элемент не имеет дочерних элементов, например C:\Windows\*.exe Из этой справки, можно сделать вывод, что начиная с PS 3, если к dir попал элемент не имеющий дочерних элементов (т.е. файл), параметр -rec всё равно сработает и см. п.1 получит "элементы в указанных расположениях и всех дочерних элементах расположений".
0
|
||||||||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
|||||||||||
| 22.01.2019, 18:54 | |||||||||||
А с учетом того, что никаких исключений при выполнении кода не будет, то при использовании старых наработок, могут возникать неожиданные коллизии. Примерно так... ЗЫ Ладно, всё уже выяснили... исправлять или менять новое поведение никто не будет уже, поэтому примем как данность и будем иметь в виду. А то, что-то шибко мы тут расфлудились, почти на ровном месте...Добавлено через 2 минуты 2. Подмена пути к файлу, путем к его родительскому каталогу - не есть само собой разумеющееся действие, оно не укладывается в обычную логику программирования. Добавлено через 1 минуту Добавлено через 1 минуту
0
|
|||||||||||
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||
| 22.01.2019, 19:43 | ||
![]() Добавлено через 24 минуты
0
|
||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
||||
| 22.01.2019, 20:20 | ||||
|
Хотя, обратной совместимости никто не обещал и даже более того, это нормально, ибо развитие не стоит на месте. В общем-то, именно это не имеет большого значения, кроме исторически справочного. ![]() А под детальным описанием, как минимум, можно было бы понимать: 1. Если -path является контейнером, поведение такое-то. C доп. ключом -recurse, поведение такое-то. 2. Если -path является не контейнером, поведение такое-то. C доп. ключом -recurse, поведение такое-то. - примерно так... можно и более кратко, но главное - донести смысл принципа работы.
0
|
||||
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||
| 22.01.2019, 21:52 | ||||||
|
Just for fun - вариант только с одним dir, без foreach и дополнительных if, else, dir и gi
![]()
Не по теме:
Кликните здесь для просмотра всего текста
0
|
||||||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
|||||||||||||
| 23.01.2019, 09:37 | |||||||||||||
1.
А есть ли там указание, что будет являться расположением, в таком варианте: 2.
0
|
|||||||||||||
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||||
| 23.01.2019, 13:19 | ||||||||
|
Тем более, далее вы соглашаетесь с моим замечанием "У каталога дочерние Item'сы - файлы и подкаталоги, а какие дочерние Item'сы у файла?" А теперь ещё раз - в справке есть примеры и объяснения для [dir c:\windows\*.exe -rec], [dir "*.txt" -rec], чётко написано, что path - это "Specifies a path to one or more locations. Wildcards are permitted." Так же, там есть описание того, как -rec не работал раньше (т.е. работает теперь). Прочитав всё это, мне становится очевидным, что: Кликните здесь для просмотра всего текста
Мне хватило, ранее, бегло прочитанной справки (а не подробного чтения сейчас, когда возникло это обсуждение) и знания того, что в PS есть отдельные Get-ChildItem и Get-Item, чтобы сразу обратить внимание на этот код: dir C:\1\3 |% {dir $_.fullname -rec} А значит разработчики и писатели справки, по крайне мере для меня, постарались, чтобы код dir 1.txt -rec не стал "магической способностью" и "трындецом"
0
|
||||||||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
||||
| 23.01.2019, 14:03 | ||||
|
И хорош уже троллить... давно всё выяснили: 1. Справка куцая, без подробностей. 2. Поведение командлета никто уже не изменит, хоть зафлудись. 3. Принцип работы надо принять и учитывать. Что ещё хочется обсудить? мне - ничего
0
|
||||
|
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|||||||||||||
| 23.01.2019, 14:31 | |||||||||||||
|
И получается, что примеры из этой же справки с -path "*.txt" и "c:\windows\*.exe" вас не заставили задуматься, что при:
0
|
|||||||||||||
|
Любознательный
7407 / 2260 / 361
Регистрация: 10.03.2016
Сообщений: 5,216
|
|||
| 23.01.2019, 14:40 | |||
|
Это разве непонятно? Вот, когда они будут использоваться, тогда и будет о чем говорить. гипотетические примеры пока не интересны.
0
|
|||
| 23.01.2019, 14:40 | |
|
Список всех файлов и папок указанной директории по заданной маске Как получить список таблиц по маске из нескольких баз данных?
Копирование файлов в папки по маске файла и маске папки Имеется список женихов и список невест. Объединить эти списки в список пар с учетом требований партнерам Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|
Лето уходит
kumehtar 17.08.2026
|
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
|
|
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины".
За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html
Задача: . . .
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|