Создание переменных пути из списка пользователей - PullRequest
0 голосов
/ 11 июля 2020

Попытка сгенерировать путь в соответствии со списком имен пользователей, хранящимся в файле CSV, это список пользователей:

  • AAA
  • AAB
  • AA C
  • AAD
  • AAE
  • AAF

Это мой скрипт:

$path = Read-Host -Prompt 'Input path to Import CSV' 
$path = $path.Trim() 
$UserList=IMPORT-CSV $path 
ForEach ($name In $UserList){

$USERNAME =  $name 
$Drive_Home = "C:\Users\Local\Desktop\Home\" 
$Drive_Ams = Drive_Home+ "Amsterdam\" + $USERNAME
Write-output $Drive_Ams  }

Это вывод:

C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAA} C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAB } C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAC} C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAD} C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAE} C: \ Users \ Local \ Desktop \ Home \ Amsterdam @ {Name = AAF}

Моя проблема в том, как сгенерировать путь без @{Name= например, это должно быть C:\Users\Local\Desktop\Home\Amsterdam\AAA

1 Ответ

0 голосов
/ 11 июля 2020

Вы должны получить доступ к свойству Name, чтобы получить его значение.

Foreach ($name in $UserList) {
    $Username = $name.Name
    # Other code
}

Import-Csv преобразует содержимое файла CSV в настраиваемые объекты. Свойства этих объектов - заголовки столбцов. Если вы укажете параметр -Header, вы можете предоставить массив заголовков столбцов. В противном случае первая строка файла становится массивом заголовков. Каждый заголовок в файле должен быть разделен указанным разделителем (по умолчанию запятая). Каждая вторая строка CSV - это объекты с этими заголовками в качестве свойств. Данные с разделителями в каждой строке становятся значениями этих свойств.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...