我有一个 csv 文件“emp.csv”,其中包含以下信息。
empid status
1 t
2 a
3 t
4 t
5 a
Run Code Online (Sandbox Code Playgroud)
我需要 empid 和具有 status="t" 的员工的状态,并且输出应该位于“res.csv”文件中
为此,您首先需要使用Import-Csv- 导入现有数据,但由于您的文件在技术上是 TSV(制表符分隔而不是逗号分隔),因此请确保使用 指定-Delimiter "`t":
$employeeStatusData = Import-Csv .\path\to\emp.csv -Delimiter "`t"
Run Code Online (Sandbox Code Playgroud)
Import-Csv将解析输入文件并将结果对象存储在$employeeStatusData. 要根据status属性/列的值过滤这些对象,请使用Where-Object:
$filteredEmployeeData = $employeeStatusData |Where-Object status -eq 't'
Run Code Online (Sandbox Code Playgroud)
现在您已经选择了相关行,您可以使用以下命令再次导出数据Export-Csv:
$filteredEmployeeData |Export-Csv .\path\to\res.csv -Delimiter "`t" -NoTypeInformation
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |