Чтение папок NAS через powershell - PullRequest
0 голосов
/ 29 мая 2020

Привет :) Вот моя проблема: я хочу посмотреть, сколько вложенных папок у моего NAS. Через Google я нашел следующее:

Get-ChildItem -Path \\<#NASIP#>\ | SELECT Attributes, Name, CreationTime | Format-Table -AutoSize;

Я могу расширить эту команду, чтобы знать, сколько (например, «8») их в конце. Но теперь эта команда не работает должным образом. Если я использую чистый IP: \\ <# NASIP #> \, отображается следующая ошибка:

Get-ChildItem : The path "\\<#NASIP##>\" cannot be found, because it does not exist.

Если я сейчас укажу подпапку, например, изображения: \\ <# NASIP #> \ pictures

                Attributes Name           CreationTime
                ---------- ----           ------------
System, Directory, Archive xxxxxx         xxxxxxxxxx 15:26:37
        Directory, Archive xxxxxx         xxxxxxxxxx 20:51:17
        Directory, Archive xxxxxx         xxxxxxxxxx 11:35:26
        Directory, Archive xxxxxx         xxxxxxxxxx 21:19:19

команда работает без проблем, и у меня все выводится правильно. Кто-нибудь знает, что это может быть?

Привет Зала

1 Ответ

0 голосов
/ 01 июня 2020

Нашел решение. Поскольку NAS предоставляет общий доступ не к папкам, а к общим, он не работает с Get-ChildItem. В качестве альтернативы я теперь делаю это через Net view. Это работает без проблем. Пример того, как может выглядеть команда:

net view \\$target /all | ?{$_ -match 'platte*'} | %{$_ -match '^(.+?)\s+Platte*'|out-null;$matches[1]}

Greetings Zala

...