2016-07-27 2 views
1
Get-ChildItem -Recurse -Filter "*" -Include "*.coffee" | Select -propert FullName 

Это возвращает список всех файлов сценариев кофе в моем проекте.эквивалент Flatmap в PowerShell

Как я могу преобразовать это в один список, где часть .coffee преобразуется в .js и .js.map?

Пример вывода псевдокод:

[ something.coffee, somethingelse.coffee ] 
[ something.js, something.js.map, somethingelse.js, somethingelse.js.map] 

ответ

1

Вы можете использовать BaseName свойство:

Get-ChildItem -Recurse -Filter "*" -Include "*.coffee" | Foreach-Object { 
    '{0}.js' -f $_.BaseName 
    '{0}.js.map' -f $_.BaseName  
} 
+0

Ваш ответ правильный, однако вопрос был больше о том, что является equilevant PowerShell для плоской карте, если вы может открыть немного на этом. – RusinaRange

+0

Извините, я не знаком с планшетами, но хотел показать вам «чистый» подход PowerShell. –

+0

Ну, это плоская карта. Flatmap - это когда вы сопоставляете что-то со списком списков и «сглаживаете» списки в один список. Также незначительный момент, это больше не дает полных путей. : o – RusinaRange