2016-11-25 3 views
0

мне нужно проверить папку и сделать массив всех различных расширений (и эта часть идут вэе)каталога расширение Еогеаспа PowerShell

$dir = dir C:\Users\seppe\Desktop\School\Scripting\Lab06\scripting_Lab06_opdr3 | Group-Object -property extension | Format-Table -Property Name 

теперь вот проблема: с этим массивом мне нужно сделать foreach для создания разных папок. Названия папок должны быть различными типами файлов (например:. Док у меня есть это:

foreach($_ in $dir){ 
mkdir C:\Users\seppe\Desktop\School\Scripting\Lab06\scripting_Lab06_opdr3\$_ 
} 

Но я получаю 5 (и в моем случае мне нужно только 3 (поскольку Ther 3 типа документов в папок)) папка, но йота это имена:

Microsoft.PowerShell.Commands.Internal.Format.FormatEndData 
Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData 
Microsoft.PowerShell.Commands.Internal.Format.FormatStartData 
Microsoft.PowerShell.Commands.Internal.Format.GroupEndData 
Microsoft.PowerShell.Commands.Internal.Format.GroupStartData 

ответ

0

Поскольку всегда есть несколько способов: PowerShell

cd "C:\Users\seppe\Desktop\School\Scripting\Lab06\scripting_Lab06_opdr3\" 
$Extensions = (dir . -file | %{$_.Extension} | Sort -unique).Trimstart(".") 
$Extensions | %{If (!(Test-Path $_)){MD $_}} 
+0

Это действительно немного более точно, потому что теперь у меня есть PNG PNG вместо .PNG –

0

вам необходимо либо указать Name свойства объекта $ _ объект при создании папки (как это содержит расширение)

mkdir C:\Users\seppe\Desktop\School\Scripting\Lab06\scripting_Lab06_opdr3\$_.Name 

Или выберитетолько расширения, когда вы создаете массив, чтобы начать с:

$dir = Get-ChildItem C:\Users\seppe\Desktop\School\Scripting\Lab06\scripting_Lab06_opdr3 | Select-Object -ExpandProperty Extension 
+0

Тогда я получить тот же результат, но с .name в конце –

+0

изменить его на '$ ($ _. Name)' или попробуйте второй вариант, который я добавил. –

+0

Нашел проблему из-за вас спасибо, момент, когда я делаю групповой объект, тогда он больше не работает! поэтому я получаю ошибки для дублированных имен, но он будет работать благодаря! –

Смежные вопросы