|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Помощь с сортировкой в get-childitem |
|
PowerShell - [решено] Помощь с сортировкой в get-childitem
|
Пользователь Сообщения: 62 |
Необходимо вывести содержимое каталога windows на экран и в текстовый файл, учитывая следующие фильтры:
- только папки - последняя буква имени s или t - сортировка по именам написал такой командлет: get-childitem c:\windows\ -exclude *.* -include *s, *t > list.txt При этом он выводит данные только в текстовый файл. Собственно как можно реализовать фильтрацию? С помощью -filter? Но тогда какой аргумент у этого параметра должен быть? |
|
Отправлено: 19:39, 06-05-2013 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать dir c:\windows -inc *[st] | Where {$_.PsIsContainer} |select -exp name | sort > dir.txt
|
Отправлено: 19:55, 06-05-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 62
|
Профиль | Отправить PM | Цитировать Kazun, спасибо, все работает
![]() Но просьба, если конечно Вам не сложно, расшифровать командлет. Хочется понимать, что там происходит. |
Отправлено: 20:40, 06-05-2013 | #3 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать 1) Получаем список директорий,которые заканчиваются на s или t,или содержат только s или t
dir - альяс на командлет get-childitem *[st] - подробнее get-help about_Wildcards Оболочка Windows PowerShell поддерживает несколько подстановочных знаков наряду с подстановочным знаком звездочки. Описание подстановочного знака Пример Совпадает Не совпадает -------- ------------------ -------- ----------------- -------- * Совпадает с нулем или a* A, ag, Apple banana большим числом знаков ? Совпадает точно с одним ?n an, in, on ran знаком в указанной позиции [ ] Совпадает с диапазоном [a-l]ook book, cook, look took знаков [ ] Совпадает с указанными [bc]ook book, cook hook знаками 2) Далее,передаем объекты командлету Where-Object для проверки условия,что объект является директорией,за это отвечает свойтсво - PsIsContainer 3) Те объекты,которые попадают под условие,передаем командлету Select-Object и раскрываем свойство Name 4) Сортируем по имени 5) Перенаправляем в файл с именем dir.txt По каждому командлету,можно почитать справку: Get-Help Get-ChildItem -Full Get-Help Where-Object -Full Get-Help Select-Object -Full Get-Help Sort-Object -Full Get-Help about_Redirection |
Отправлено: 20:50, 06-05-2013 | #4 |
Пользователь Сообщения: 62
|
Профиль | Отправить PM | Цитировать Огромное спасибо! Вроде все более или менее понял!
![]() Но по ходу разбирательства у меня возник такой вопрос: можно ли как-то одновременно осуществить вывод результата не только в текстовый файл, но и на экран. Понятно, что можно продублировать командлет, не указав в одной из копий перенаправление вывода. Но может быть это можно сделать как-то более изящно? |
|
Отправлено: 23:33, 06-05-2013 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 07:06, 07-05-2013 | #6 |
Ветеран Сообщения: 1758
|
Цитата kelevara:
|
|
Отправлено: 07:07, 07-05-2013 | #7 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Поиск с сортировкой по дате. | chippo | О сайте и форуме | 1 | 20-12-2012 00:10 | |
C/C++ - Проблема с сортировкой | pashazt | Программирование и базы данных | 0 | 11-12-2012 14:20 | |
Delphi - Проблема с сортировкой таблицы!!! | novashdima | Программирование и базы данных | 0 | 07-05-2010 20:44 | |
Выбор записей с сортировкой (MySQL) | benya | Вебмастеру | 8 | 21-06-2006 21:09 |
|