在 Powershell 上获取行号?

Spi*_*a97 5 powershell

所以我一直在寻找很多东西,但找不到任何不会给我任何回报的东西。

我有一个带有变量的代码,我有一个包含很多行的文件。例如,我有以下文件(things.txt):

番茄酱

芥末

南瓜

芥末

番茄酱

而我要取出的是“芥末”的行号。这是我现在正在尝试的代码

$search="Mustard"
$linenumber=Get-Content things.txt | select-string $search -context 0,1
$linenumber.context
Run Code Online (Sandbox Code Playgroud)

但它实际上返回“”。网上的每个人都在使用上下文,但我只想知道每个“芥末”的行号,即 2 和 4。

谢谢你的帮助!

box*_*dog 10

Select-String为您返回行号。你只是看错了属性。将您的代码更改为:

$search="Mustard"
$linenumber= Get-Content thing.txt | select-string $search
$linenumber.LineNumber
Run Code Online (Sandbox Code Playgroud)


Zah*_*eer 5

对于正在寻找一款班轮的人来说,代码是不言自明的。

Get-Content .\myTextFile.txt | Select-String -Pattern "IamSearching" | Select-Object LineNumber
Run Code Online (Sandbox Code Playgroud)

编辑(2022 年 4 月):

或者

(Select-String .\myTextFile.txt -Pattern "IamSearching").LineNumber
Run Code Online (Sandbox Code Playgroud)