使用Get-Member查看Import-Csv的结构
PS /Users/sixdog/Documents/PowerShell> Import-Csv -Path ./test.csv -Header "id" ,"name" ,"sex" ,"age" ,"birthday" ,"comment" | Get-Member
TypeName: System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals( System.Object obj)
GetHashCode Method int GetHashCode( )
GetType Method type GetType( )
ToString Method string ToString( )
age NoteProperty string age = 20
birthday NoteProperty string birthday = 19871201
comment NoteProperty string comment = 无话可说1
id NoteProperty string id = 1
name NoteProperty string name = zhangsan1
sex NoteProperty string sex = 男
PS /Users/sixdog/Documents/PowerShell>
由Get-Member结果可知,得到的是PSCustomObject对象 使用对象过滤数据,做成SQL
$filterDto = Import-Csv -Path ./test.csv -Header "id" ,"name" ,"sex" ,"age" ,"birthday" ,"comment" | Where-Object{
$_ . 'sex' -eq '女'
}
Write-Host $filterDto
$SQL = $null
$filterDto | ForEach-Object{
$id = $_ . 'id'
$name = $_ . 'name'
$comment = $_ . 'comment'
$SQL += "insert into table ( id,name,comment) value ( $id ,'$name' ,'$comment' ) ; `n"
}
$SQL | Out-File -FilePath ./输出SQL.txt
insert into table ( id,name,comment) value ( 2 ,'zhangsan2' ,'无话可说2' ) ;
insert into table ( id,name,comment) value ( 4 ,'zhangsan4' ,'无话可说4' ) ;
insert into table ( id,name,comment) value ( 6 ,'zhangsan6' ,'无话可说6' ) ;
insert into table ( id,name,comment) value ( 8 ,'zhangsan8' ,'无话可说8' ) ;
这次主要是学会使用Get-Member查看结构,从而知道怎么解析数据,这么做比上一章更方便,简介。