Bildiğim komut satırından paylaşımları uzaktan numaralandırmanın tek bir yolu var ve şu şekilde net view
:
C:\Users\mark.henderson>net view \\enetsqnap01
Shared resources at \\enetsqnap01
Share name Type Used as Comment
-------------------------------------------------------------------------------
Backups Disk
CallRecordings Disk
Download Disk System default share
home Disk Home
homes Disk System default share
Installs Disk
Justin Disk Copy of files from Justin laptop
michael Disk
Multimedia Disk System default share
Network Recycle Bin 1 Disk [RAID5 Disk Volume: Drive 1 2 3 4]
Public Disk System default share
Qsync Disk Qsync
Recordings Disk System default share
Sales Disk Sales Documents
SalesMechanix Disk
Server2012 Disk Windows Server 2012 Install Media
Usb Disk System default share
VMWareTemplates Disk
Web Disk System default share
The command completed successfully.
Bu özellikle kendi başına ayrıştırılamaz, ancak veriyi satır satır işlemek için bir diziye atabilirsiniz:
$sharedFolders = (NET.EXE VIEW \\enetsqnap01)
Artık bir diziniz var ve başlangıçta $sharedFolders[7]
paylaşımlarınız var. Daha sonra split
çift alan gibi bir şeyde olabilirsiniz - paylaşım adının kendisinde görünme olasılığı düşüktür ve paylaşım adınız çok uzun değilse, paylaşım adı ve tür alanı arasında tek bir boşluk bırakarak çalışmanız gerekir:
$sharedFolders[7].split(' ')[0]
Backups
Bunları bir ForEach ve bazı koşullu mantık kullanarak işleyebilirsiniz. Mükemmel olmaz, ancak çoğu kullanım durumunda işe yaramalıdır.
Kısacası, sadece dosya adlarını konsola çıkarmak için:
(net view \\enetsqnap01) | % { if($_.IndexOf(' Disk ') -gt 0){ $_.Split(' ')[0] } }