Powershell - 检查 csv 行是否有数据
Powershell - check if csv row has data
尝试获取我发现对我有用的代码片段。我需要检查一个文件夹,看看是否有任何文件。如果是这样,遍历每一个并检查是否至少存在一行数据(不包括 headers)。有人帮帮我吗?不确定如何读取文件然后检查行。或任何其他方式来实现这一目标?
$csvData = Import-Csv "C:\Users\MG\Desktop\ScanFolder"
{
foreach($dataRow in $csvdata){
$result = #dosomething}
if($result ){
Write-Host "Data Exists"
}
else{
Write-Host "Empty"
}
}}
如果您 Import-CSV
一个只有 header 记录的 CSV 文件,它将成功,但结果将是一个长度为零的数组。根据你的要求,你应该可以做类似
的事情
$csvpath = "C:\CSVFiles"
ForEach ($file in (Get-ChildItem $csvpath)) {
If ((Import-CSV $file).length -eq 0) {
Write-Host "$file has no data"
}
}
尝试获取我发现对我有用的代码片段。我需要检查一个文件夹,看看是否有任何文件。如果是这样,遍历每一个并检查是否至少存在一行数据(不包括 headers)。有人帮帮我吗?不确定如何读取文件然后检查行。或任何其他方式来实现这一目标?
$csvData = Import-Csv "C:\Users\MG\Desktop\ScanFolder"
{
foreach($dataRow in $csvdata){
$result = #dosomething}
if($result ){
Write-Host "Data Exists"
}
else{
Write-Host "Empty"
}
}}
如果您 Import-CSV
一个只有 header 记录的 CSV 文件,它将成功,但结果将是一个长度为零的数组。根据你的要求,你应该可以做类似
$csvpath = "C:\CSVFiles"
ForEach ($file in (Get-ChildItem $csvpath)) {
If ((Import-CSV $file).length -eq 0) {
Write-Host "$file has no data"
}
}