我有一个看起来像的 csv
姓名、电子邮件、地址
姓名、电子邮件、地址
姓名、电子邮件、地址
我想跑步
New-Mailbox -Name "*Name*" -WindowsLiveID *email* -ImportLiveId
(其中*x*
替换为 csv 中的值)。
在 csv 文件的每一行上。
我怎样才能做到这一点?
我有一个看起来像的 csv
姓名、电子邮件、地址
姓名、电子邮件、地址
姓名、电子邮件、地址
我想跑步
New-Mailbox -Name "*Name*" -WindowsLiveID *email* -ImportLiveId
(其中*x*
替换为 csv 中的值)。
在 csv 文件的每一行上。
我怎样才能做到这一点?
$csv = Import-Csv c:\path\to\your.csv
foreach ($line in $csv) {
New-Mailbox -Name $line.Name -WindowsLiveID $line.Email -ImportLiveId
}
csv 的第一行必须是 Name,Email,Address
如果您不能在 CSV 中包含标题,您还可以拥有:
$csv = Import-Csv c:\path\to\your.csv -Header @("Name","Email","Address")
-Header 不会以任何方式修改 csv 文件。
import-csv .\file.csv -header ("first","second","third") | foreach{New-Mailbox -Name $_.first -WindowsLiveID $_.second -ImportLiveId}
这是我见过的一些最有用的信息——它让我的工作变得轻松多了!!!
结合 Netapp 命令:
获取navol | 获取 NaSnapshotSchedule | 导出-Csv -path d:\something.csv
导入-csv d:\something.csv -header ("label1","label2","label3","label4","label5") | foreach {Set-naSnapshotschedule $ .label1 -Weeks $ .label2 -Days $ .label3 -Hours $ .label4 -Whichhours "1,2,3,4,5"}
优秀的东西!
请注意,“标签”应该有一个下划线 - 无论出于何种原因它没有反映在页面中,所以 Dollar($)Underscore(_)Dot(.)Label