как я могу получить список общих каталогов на локальном сервере windows?

<p>если у меня есть сервер windows (обычно 2000, 2003 или 2008), есть ли простой способ перечислить все локальные каталоги на этом сервере?</p><p>я могу найти сами общие папки достаточно просто, но мне бы очень хотелось быстро найти локальные каталоги, которые они представляют, на диске.</p><p>спасибо!</p>

<p>вы можете перейти к управлению компьютером (щелкнуть правой кнопкой мыши по моему компьютеру, выбрать "управление"), развернуть узел "общие папки" и увидеть список всех общих папок, подключенных сеансов и открытых файлов.</p><p>для w2k8 вы делаете это в диспетчере серверов вместо: роли -> файловые службы -> управление общими ресурсами и хранилищами; вкладка shares в центре окна.</p><p>для перечисления общих ресурсов удаленных серверов, обратите внимание, что в svr\_name net view будут отображаться только общие ресурсы пользователя, никакие административные или скрытые. добавление ключа/all в конце покажет эти другие (для w2k8).</p><pre><code>c:\>net view sx1 shared resources at sx1 share name type used as comment -------------------------------------------- share\_cifs disk the command completed successfully. c:\>net view sx1 /all shared resources at sx1 share name type used as comment -------------------------------------------- admin$ disk remote admin share_cifs disk c$ disk default share ipc$ ipc remote ipc the command completed successfully. 

в командной строке вы можете использовать команду "net share". он напечатает таблицу со списком имени ресурса, ресурса и необязательного замечания.

net share из командной строки выдаст вам имя ресурса и путь к нему. если вам нужно что-то более продвинутое, вы можете запросить wmi, используя vbscript или powershell.

используйте wmi: win32_share.в powershell:gwmi -class win32_share это также включает в себя систему предоставленных общих ресурсов и будет работать удаленно.свойство path полученного объекта является локальным путем.

для некоторой ясности (поскольку не очевидно, где найти список акций в gui)как уже упоминалось, откройте <strong>командная строка</strong> и введите <strong>net share</strong>. это, вероятно, самый простой способ узнать, какие акции доступны. это также покажет скрытые общие ресурсы (те, с суффиксом $) и то, на что указывает общий ресурс.</p><p>вот пример:</p><pre><code>c:\users\tstmoss>net share share name resource remark ------------------------------------------------------------------------------- c$ c: default share ipc$ remote ipc admin$ c:windows remote admin the command completed successfully. в windows server 2008 либо щелкните правой кнопкой мыши <strong>компьютер</strong> в меню <strong>пуск</strong> и выберите <strong>управление</strong>, либо запустите <strong>диспетчер сервера</strong> (по умолчанию первый значок рядом с меню "пуск" на панели задач).в <strong>диспетчер серверов</strong> разверните узел <strong>roles</strong>, затем разверните узел <strong>file services</strong>. нажмите <strong>управление общими ресурсами и хранилищами</strong>. на дисплее появятся две вкладки: <strong>общие ресурсы</strong> и <strong>объемы</strong>. на вкладке shares отображаются существующие общие ресурсы (аналогично выводу консоли выше). этот интерфейс позволяет вам взаимодействовать с общим ресурсом, например, изменять свойства/разрешения, останавливать общий ресурс или создавать новые.надеюсь, это поможет.

для быстрого и грязного списка, из командной строки выполните "net share". единственная проблема с этой командой состоит в том, что она вдумчиво форматирует данные в столбцы и потенциально обрезает длинные пути.вы можете быть лучше обслужены, делая вhkey_local_machinesystemcurrentcontrolsetserviceslanmanservershares с regedit. вы можете экспортировать это по желанию.

щелкните правой кнопкой мыши на вашем my computer и выберите manage.в открывшемся окне найдите в дереве слева значок с надписью shared folders и разверните его, чтобы найти другой значок с меткой shares. нажмите здесь, и вы должны увидеть список всех текущих акций.

откройте экземпляр powershell, добавьте эту функцию и запустите ее:function get-fileshare { [cmdletbinding()] param( [string] $name = '%', [parameter(valuefrompipeline = $true, valuefrompipelinebypropertyname = $true)] [string] $computername = "$env:computername" ) set-strictmode -version latest $name = $name -replace "\*", "%" if ($name -eq '%') { get-wmiobject -class win32_share -computername $computername } else { get-wmiobject -class win32\_share -computername $computername -filter "name like '$name'" } } </code></pre>