首页 > 解决方案 > 使用单个字符串在 PowerShell 中逐行读取文件

问题描述

我想在 PowerShell 中逐行读取文件。具体来说,我想取一个日期为“2020 年 6 月 30 日”的值,但我只用整条线管理它。

我知道带有 get-content 的命令:

$GetData = (Get-Content .\file.dat -TotalCount 3)[-1]

但是如何在字符串中只获得一个值?

SERVER SCTTP0012CLD 0050568E4146 7260
DAEMON server01.d D:\GCTI\LicenseManager1\server01.d.exe port=2345
FEATURE 3GP08590BCAA server01.d 8.0 30-jun-2020 18144 581E94E4546D \
vendor_info="v8.0 - server01 CIME Platform - MS" NOTICE="afric \

标签: powershell

解决方案


以下使用带有-replace运算符的正则表达式(正则表达式)从感兴趣的行中提取表单中的日期dd-MMM-yyyy

(Get-Content .\file.dat -TotalCount 3)[-1] -replace '^.+?\b(\d{2}-[a-z]{3}-\d{4})\b.+$', '$1'

推荐阅读