Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата Busla:
передать весь список искомых файлов через Include в Get-ChildItem - интересная идея »
С тех пор, как Microsoft начал указывать типы параметров у командлетов — жить стало легче, жить стало веселей .

Цитата Busla:
если вы раскрашиваете сообщения исходя из их разной ценности »
Нет, не поэтому. Просто группировка вывода, цветовая дифференциация штанов.

Цитата Busla:
используете стандартные Write-Debug, Write-Verbose, Write-Info - они и сами раскрасят, и ими можно извне хоть как-то управлять »
Если бы это были Debug/Verbose/Info сообщения — тогда, да. В данном случае я не вижу нужды наделять простой вывод искусственным смыслом. Я понимаю Вашу мысль, но я вижу ровно два места вывода — stdout и stderr, и не стремлюсь здесь что-то менять. И, к тому же, мне нужно, чтобы пользователь, например, гарантированно видел сообщение о той или иной ошибке.

Цитата Busla:
но вообще, это бесполезное самолюбование - как в кино: по экрану бежит куча текста который никто не читает и в принципе не в состоянии прочитать и проанализировать. »
У меня — не бежит. У меня — при нужде передаётся в редактор Far Manager'а:
Код: Выделить весь код
edit:< powershell.exe -File "C:\Мои проекты\0235\0003.ps1"
Зачем тогда пользовать консоль, если не пользовать все её возможности?!

Цитата Busla:
Лучше бы уж тогда Write-Progress впилили »
Для удаления нескольких сотен файлов? Не вижу особого смысла. Основной временно́́й расход здесь займёт поиск файлов — FindFirst()/FindNext(), а само удаление будет тупо в уже заполненный кэш писаться.

Цитата Busla:
заворачивать всё в глобальные if - ну так себе подход неудобно отслеживать к чему относится закрывающая скобка и else - разверните условие и сделайте выход сразу после if »
Редактор вменяемый фолдинг не поддерживает, что ли? Я вот как раз наоборот, терпеть не могу кучу этих вечных выходов посерёд кода. Как по мне — так в моём подходе зараз виден весь алгоритм целиком и полностью. Впрочем, это кому как, соглашусь, что зависит сие от восприятия конкретного человека.

Цитата Busla:
.Net библиотеки не знают ничего про PSdisk, поэтому ваши скритпы невозможно тестировать стандартным Pester
метод файлового объекта Delete() вместо Remove-Item - тоже та ещё засада - я не могу в начале скрипта к примеру написать $PSDefaultParameterValues.Add("Remove-Item:WhatIf",$True) и посмотреть: что же происходит »
Вы не поверите: чем теснее мне приходится общаться с командлетами, тем больше мне начинает нравиться прямое использование методов .Net — меньше шансов нарваться на какой-нибудь очередной затык в реализации командлета .

Отправлено: 06:03, 09-01-2019 | #10