ローカルWindowsサーバー上の共有ディレクトリのリストを取得するにはどうすればよいですか?


69

Windowsサーバー(通常は2000、2003、または2008)がある場合、そのサーバーで共有されているすべてのローカルディレクトリを一覧表示する簡単な方法はありますか?

共有自体は簡単に見つけることができますが、ディスク上でそれらが表すローカルディレクトリをすばやく見つける方法が欲しいです。

ありがとう!

回答:


93

コンピューターの管理([コンピューター]を右クリックして[管理]を選択)に進み、[共有フォルダー]ノードを展開して、すべての共有、接続されたセッション、開いているファイルのリストを表示できます。

W2K8では、代わりにサーバーマネージャーでこれを行います。役割->ファイルサービス->共有と記憶域管理。ウィンドウの中央にある[共有]タブ。

リモートサーバーの共有を一覧表示する場合、NET VIEW svr_nameはユーザー共有のみを表示し、管理共有または非表示共有は表示しないことに注意してください。末尾に/ allスイッチを追加すると、これらの他のものが表示されます(W2K8の場合)。

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.

2
スクリーンショットをありがとう。将来的には、画像が将来利用できない場合に備えて、投稿しているものに到達する方法を正確に説明し、説明する必要があります。
SQLChicken 09年

彼は別のサイトなどにリンクしているように聞こえます。彼はこのサイトに写真をアップロードしました...もちろん、将来的に利用可能になるでしょう。
オースティン「危険」パワーズ

3
記録用:画像はImageShackでホストされていたため、今日では利用できません。
マッシモ14

3
これは誤解を招くものです。GUIソリューションは機能しますnet shareが、ローカルサーバーで共有されているものと対応する物理パス(net view表示されない)を表示するには、CLI を使用する必要があります。
マッシモ

1
@Massimoあなたのコメントは誤解を招くものです。私の提案は、リモート共有のリストにNet Viewを使用することでした。Net Shareはリモート共有をリストしないため、これには使用できません。ローカルマシンを見る場合は、はい、Net Shareの方が良いオプションですが、リモートでは利用できません。
サムコーガン

36

コマンドラインプロンプトから、「net share」コマンドを使用できます。共有名、リソース、およびオプションの注釈のリストを含むテーブルを印刷します。


22

net shareコマンドプロンプトから共有名とパスが表示されます。さらに高度なものが必要な場合は、VBScriptまたはPowerShellを使用してWMIを照会できます。


17

WMI:Win32_Shareを使用します。

PowerShellの場合:

gwmi -class Win32_Share

これには、システムが提供する共有も含まれ、リモートで動作します。

結果のオブジェクトのPathプロパティはローカルパスです。


2
使用しているコンピューター以外のコンピューターからこれを取得するには、コマンドに「-computername name」を追加します。これは、マシンのホスト全体で共有を取得する場合に非常に便利です。それらをcsvにダンプして、さらなる処理や他の多くの楽しいPowerShellの良さを実現できることを忘れないでください。
フリッカーフライ

10

わかりやすくするために(GUIで共有のリストがどこにあるかは明らかではないため)

人々が言及したように、コマンドプロンプトを開き、net share入力します。これはおそらく、どの共有が利用可能かを確認する最も簡単な方法です。また、非表示の共有(接尾辞が$の共有)と共有が指す場所も表示されます。

以下に例を示します。

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 では、[スタート ]メニューの[ コンピューター ]を右クリックして[ 管理 ]を選択するか、サーバーマネージャー(既定では、タスクバーの[スタート]メニューの横にある最初のアイコン)を起動します。

ではサーバーマネージャ、展開する役割、その後、ノードを展開するファイルサービスのノードを。[ 共有とストレージ管理]をクリックします。ディスプレイには、[ 共有]と[ ボリューム]の 2つのタブが表示されます。[共有]タブには、既存の共有が表示されます(上記のコンソール出力と同じ)。このインターフェイスを使用すると、プロパティ/アクセス許可の変更、共有の停止、新しい共有の作成など、共有とやり取りできます。

お役に立てば幸いです。


7

クイックアンドダーティリストの場合は、コマンドプロンプトから「NET SHARE」を実行します。このコマンドの唯一の問題は、思慮深く列にデータをフォーマットし、潜在的に長いパスをカットすることです。

あなたがすることでより良いサービスを受けることができます

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Shares

REGEDITで。これを必要に応じてエクスポートできます。


4

My Computerアイコンを右クリックしてを選択しますManage

開いたウィンドウで、左側のツリーでラベルの付いたアイコンShared Foldersを探し、展開してのラベルが付いSharesた別のアイコンを見つけます。ここをクリックすると、現在のすべての共有のリストが表示されます。


0

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'"
    }
}

-1

\ servernameは、実行(window + R)でコンピューター上のサーバーの名前を書き込み、その後、サーバーが提供する共有フォルダーのリストを表示します。

ハウラス・アブドゥッラ


これは正しくありません(\ SERVERの代わりに* \ ** SERVER)またはanswer.Windows Explorerは* local共有ではなく、リモート共有をリストし、$を含む名前を除外します。さらに、リストではなく表示ウィンドウです。
bjoster

-3

上記のすべてのアドバイスを使用してこれを試し、独自のソリューションを考案しました...

これは、このコンピューターまたは単一のコンピューターの共有だけでなく、ntwk上の他のすべてのコンピューターの共有を取得する方法です。

DOSプロンプトで...

NET VIEW> C:\ TEMP \ SVRS.TXT

(SVRS.TXTを編集します)(これに似たものを参照してください:)

\\COMPUTER1
\\COMPUTER2
\\COMPUTERX

(二重バックスラッシュを交換してください)

(ネットビュー)

NET VIEW COMPUTER1
NET VIEW COMPUTER2
NET VIEW COMPUTERX

(最初の行の終わりにたどり着きます)

(/ ALL> C:\ TEMP \ SHARES.TXT)

NET VIEW COMPUTER1 /ALL > C:\TEMP\SHARES.TXT
NET VIEW COMPUTER2
NET VIEW COMPUTERX

(最後の行を介して2行目の終わりにたどり着きます)

(/ ALL >> C:\ TEMP \ SHARES.TXT)

NET VIEW COMPUTER1 /ALL > C:\TEMP\SHARES.TXT
NET VIEW COMPUTER2 /ALL >> C:\TEMP\SHARES.TXT
NET VIEW COMPUTERX /ALL >> C:\TEMP\SHARES.TXT

(そのファイルを.BATファイルとして保存)

(.BATファイルをダブルクリック)

(C:\ TEMP \ SHARES.TXTファイルを表示)

LMKあなたが私のソリューションについてどう思うか-すべての上限についてはごめん

H

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.