Come posso ottenere un elenco di directory condivise sul server Windows locale?


69

Se ho un server Windows (in genere 2000, 2003 o 2008), esiste un modo semplice per elencare tutte le directory locali condivise su quel server?

Riesco a trovare le stesse condivisioni abbastanza facilmente, ma mi piacerebbe un modo rapido per trovare le directory locali che rappresentano su disco.

Grazie!

Risposte:


93

È possibile accedere alla gestione del computer (fare clic con il pulsante destro del mouse sul mio computer, selezionare Gestisci), espandere il nodo Cartelle condivise e visualizzare un elenco di tutte le condivisioni, sessioni connesse e file aperti.

Per W2K8, invece, eseguire questa operazione in Server Manager: Ruoli -> Servizi file -> Gestione condivisione e archiviazione; la scheda Condivisioni al centro della finestra.

Per elencare le condivisioni di server remoti, notare che NET VIEW svr_name mostrerà solo condivisioni utente, nessun amministratore o condivisioni nascoste. L'aggiunta dell'opzione / all alla fine mostrerà questi altri (per 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
Grazie per lo screenshot In futuro dovresti anche delineare e descrivere esattamente come arrivare a ciò che pubblichi nel caso in cui l'immagine non fosse disponibile in futuro.
SQLChicken

Lo fai sembrare come se fosse collegato a un altro sito o qualcosa del genere. Ha caricato una foto su questo sito ... quindi ovviamente sarà disponibile in futuro.
Austin '' Danger ''

3
Per la cronaca: l'immagine è stata ospitata su ImageShack e ad oggi non è disponibile.
Massimo

3
Questo è fuorviante; mentre la soluzione GUI funziona, quando si va CLI net sharedovrebbe essere usato per mostrare ciò che è condiviso sul server locale e i corrispondenti percorsi fisici (che net viewnon mostra).
Massimo

1
@Massimo il tuo commento è fuorviante. Il mio suggerimento era di utilizzare Net View per elencare le condivisioni remote. Net Share non elencherà le condivisioni remote e quindi non può essere utilizzato per questo. Se stai guardando il computer locale, sì, Net Share è un'opzione migliore, ma non è disponibile da remoto.
Sam Cogan,

36

Da un prompt della riga di comando, è possibile utilizzare il comando "net share". Stampa una tabella con l'elenco del nome della condivisione, della risorsa e un'osservazione facoltativa.


22

net shareda un prompt dei comandi ti darà il nome e il percorso della condivisione. Se hai bisogno di qualcosa di più avanzato, puoi eseguire una query su WMI utilizzando VBScript o PowerShell.


17

Usa WMI: Win32_Share.

In PowerShell:

gwmi -class Win32_Share

Ciò include anche le condivisioni fornite dal sistema e funzionerà in remoto.

La proprietà Path dell'oggetto risultante è il percorso locale.


2
per ottenerlo da un computer diverso da quello in cui ti trovi, aggiungi "-computername name" al comando. Questo può essere molto utile se si desidera ottenere le condivisioni su un intero host di macchine. Non dimenticare che puoi scaricarli in un CSV per ulteriori elaborazioni e molte altre divertenti bontà di PowerShell.
flickerfly,

10

Per un po 'di chiarezza (poiché non è ovvio dove trovare l'elenco delle condivisioni nella GUI)

Come menzionato, apri un prompt dei comandi e digita net share . Questo è probabilmente il modo più semplice per vedere quali condivisioni sono disponibili. Questo mostrerà anche le condivisioni nascoste (quelle con $ come suffisso) e dove punta la condivisione.

Ecco un esempio:

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.

Su Windows Server 2008, fai clic con il pulsante destro del mouse su Computer nel menu Start e seleziona Gestisci oppure avvia Server Manager (per impostazione predefinita, la prima icona accanto al menu di avvio nella barra delle attività).

In Server Manager , espandere il nodo Ruoli , quindi espandere il nodo Servizi file . Fai clic su Gestione condivisione e archiviazione . Il display mostrerà due schede, Azioni e Volumi . La scheda Condivisioni mostra le condivisioni esistenti (lo stesso dell'output della console sopra). Questa interfaccia consente di interagire con la condivisione come modificare proprietà / autorizzazioni, interrompere la condivisione o crearne di nuove.

Spero che aiuti.


7

Per un elenco rapido, da un prompt dei comandi eseguire "NET SHARE". L'unico problema con questo comando è che formatta attentamente i dati in colonne e potenzialmente interrompe i percorsi lunghi.

Potresti essere meglio servito facendo a

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Shares

con REGEDIT. Puoi esportarlo come desiderato.


4

Fai clic destro sulla tua My Computericona e scegli Manage.

Nella finestra che si apre, cerca nella struttura a sinistra l'icona etichettata Shared Foldersed espanderla per trovare un'altra icona etichettata Shares. Fai clic qui e dovresti visualizzare un elenco di tutte le condivisioni correnti.


0

Apri un'istanza di PowerShell, aggiungi questa funzione, quindi eseguila:

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 scrivi il nome del server sul tuo computer in Esegui (finestra + R), quindi mostra il suo elenco di cartelle condivise fornite da serve

Hawraz Abdulla


Questo non è né corretto ( * \ ** SERVER invece di \ SERVER) né una risposta. L'elenco Explorer di Windows non * condivisioni locali ma condivisioni remote ed esclude persino i nomi con $ in esso. Inoltre non è un elenco ma una finestra di visualizzazione.
Bjoster,

-3

Ho provato questo usando i consigli di tutto quanto sopra e inventando la mia soluzione ...

Questo è un modo per ottenere le condivisioni di tutti gli altri computer su NTWK, non solo le condivisioni di QUESTO computer o di un singolo computer

al prompt del DOS ...

NET VIEW> C: \ TEMP \ SVRS.TXT

(ALLORA MODIFICARE SVRS.TXT) (VEDERE LO STUFF COME QUESTO :)

\\COMPUTER1
\\COMPUTER2
\\COMPUTERX

(SOSTITUIRE I DOPPI BACKSLASH CON)

(VISTA NETTA)

NET VIEW COMPUTER1
NET VIEW COMPUTER2
NET VIEW COMPUTERX

(ATTACCHI ALLA FINE DELLA PRIMA LINEA)

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

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

(ATTACCHI ALLA FINE DELLA SECONDA LINEA ATTRAVERSO L'ULTIMA LINEA)

(/ 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

(SALVA QUESTO FILE COME FILE .BAT)

(Fare doppio clic su quel file .bat)

(VISUALIZZA IL TUO FILE C: \ TEMP \ SHARES.TXT)

LMK, cosa ne pensi della mia soluzione, preoccupati di tutte le protezioni

H

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.