Читайте CSV в PowerShell и Map Drives - PullRequest
       48

Читайте CSV в PowerShell и Map Drives

0 голосов
/ 21 февраля 2020

Я хочу прочитать из .CSV, а затем использовать данные для сопоставления диска. Файл выглядит следующим образом:

Location, UNC1, UNC2      
USA, \\Server1\Data, \\Server1\Shared
EMEA, \\Server2\Data, \\Server2\Shared

Сложная задача - я хочу прочитать данные из CSV, а затем представить их в окне списка (угадаю, я должен вызвать VBS?), Но показать только регион в окне. , Затем, когда я выбираю регион, он отображает 2 UN C на локальный компьютер.

Я прочитал несколько постов и мне понадобится Import-CSV - просто в поисках точки перехода.

Есть предложения?

1 Ответ

0 голосов
/ 21 февраля 2020

Обычно мы просим вас попробовать что-то сделать самостоятельно, тогда мы здесь, чтобы помочь устранить неполадки на этом пути. В следующий раз, когда вы зададите вопрос, пожалуйста, попытайтесь его кодировать самостоятельно, а затем приходите, чтобы попросить о помощи, когда вы застряли.

Я просто сделал это для удовольствия очень быстро, потому что это было довольно легко, наслаждайтесь.

function Map-Drive(){
    if($ComboBox1.text -eq "USA"){
        New-PSDrive -Name K -PSProvider FileSystem -Root $csv.UNC1[0] -Persist -Scope Global
        New-PSDrive -Name L -PSProvider FileSystem -Root $csv.UNC2[0] -Persist -Scope Global
    }
    if($ComboBox1.text -eq "EMEA"){
        New-PSDrive -Name M -PSProvider FileSystem -Root $csv.UNC1[1] -Persist -Scope Global
        New-PSDrive -Name N -PSProvider FileSystem -Root $csv.UNC2[1] -Persist -Scope Global
    }
}

$csv = import-csv "\\server\folder\test.csv" -Delimiter ","

Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::EnableVisualStyles()

$Form                            = New-Object system.Windows.Forms.Form
$Form.ClientSize                 = '319,63'
$Form.text                       = "Regional Drive Map"
$Form.TopMost                    = $false

$ComboBox1                       = New-Object system.Windows.Forms.ComboBox
$ComboBox1.text                  = "comboBox"
$ComboBox1.BackColor             = "#d7ebff"
$ComboBox1.width                 = 143
$ComboBox1.height                = 54
$ComboBox1.location              = New-Object System.Drawing.Point(20,18)
$ComboBox1.Font                  = 'OCR A,12,style=Bold'

$Button1                         = New-Object system.Windows.Forms.Button
$Button1.BackColor               = "#eaeaea"
$Button1.text                    = "Map Drive"
$Button1.width                   = 107
$Button1.height                  = 30
$Button1.location                = New-Object System.Drawing.Point(174,14)
$Button1.Font                    = 'OCR A,10'

$ComboBox1.DataSource = [system.Collections.ArrayList]$csv
$ComboBox1.DisplayMember = 'Location'

$Button1.Add_Click({Map-Drive})

$Form.controls.AddRange(@($ComboBox1,$Button1))
#Finally Show our GUI
$Form.ShowDialog()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...