Сортировка списка путей в Powershell - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь отсортировать (из самой глубокой папки в корень) список заданных путей.

Есть ли способ добиться этого с помощью существующих функций?

Пример:

Дано:

test\A\directory1
test\B
test\A\directory1\end
test\A
test\C\directory2
test
test\C
test\directdirectory

Для получения:

test\C\directory2
test\A\directory1
test\directdirectory
test\C
test\B
test\A
test

1 Ответ

0 голосов
/ 22 ноября 2018

Вы можете использовать выражение в вашей команде сортировки для сортировки по сумме \

Sort {($_ -split '\\').Count}, {$_} -Descending

Пример благодарность LotPings

@(
'test\A\directory1'
'test\B'
'test\A\directory1\end'
'test\A'
'test\C\directory2'
'test'
'test\C'
'test\directdirectory'
) | Sort {($_ -split '\\').Count}, {$_} -Descending

Результат

test\A\directory1\end
test\C\directory2
test\A\directory1
test\directdirectory
test\C
test\B
test\A
test

Редактировать: необходима сортировка по второму ключу жюри по-прежнему отсутствует

Sorting on a second key difference

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...