问题标签 [select-string]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1088 浏览

powershell - 用于 pptx 文件的 Windows 上的 Grep

我有一个充满PowerPoint演示文稿(pptx)的目录。我正在尝试查找其中包含“December”一词的演示文稿。在我的 Mac 中,我可以使用 grep,但在 Windows 中,我一直在尝试使用 Powershell 和命令提示符,但它不起作用。

我尝试搜索其他帖子,但我发现的是这样的“其他帖子”

我尝试findstr /s /i /m "\<december.*" *.*在命令提示符下使用,但它只返回一个 .doc 而没有任何 pptx 文件。我知道我有一些 pptx 文件,其中包含“十二月”一词。

我还在 Powershell 中尝试了以下操作:

我知道该文件无法读取。我希望它查看目录。

任何帮助将非常感激。

0 投票
1 回答
56 浏览

powershell - 将用户输入添加到 Select-String 命令

我目前正在尝试创建一个选择字符串命令来确定我公司中的用户是否仍然出现在某些目录中。我当前的命令如下:

当前命令意味着我需要在每次运行脚本之前更改 Pattern 参数的内容。我想做的是在我运行脚本时请求我输入字符串。是否可以在此命令中添加一个 while 循环来请求用户输入?

谢谢

0 投票
1 回答
201 浏览

regex - 选择字符串陷入无限循环

我正在尝试使用 PowerShell 从目录中的文件中提取与特定模式匹配的所有文本。然而,由于某种原因,它似乎无限循环(输出是一组无限重复的相同结果,脚本永远不会完成)。拜托,谁能给我一个关于问题是什么的提示?

0 投票
3 回答
4130 浏览

arrays - 如何将批量文本文件中的选择字符串输出保存到数组 powershell

我正在尝试从文本文件中批量提取子字符串,并将这些子字符串保存到数组中。我尝试了以下变体。这会将所有选定的字符串输出到屏幕,但仅将最终输出保存到变量。有没有办法模仿 =+ 运算符的功能,以便所有项目都存储在数组中?

如果我的策略被误导,将子字符串拉入数组的总体目的是让这些文本文件的多个单独子字符串数组组成。然后我会将这些值连接到一个 csv 中。我试图拉出元素而不是重新排列文本文件,因为文本文件中的子字符串的顺序不同。例子:

txt文件一:

txt文件二:

最终期望的结果(这部分工作除了元素的顺序)

CSV 文件

0 投票
1 回答
1290 浏览

powershell - 选择字符串多变量模式

我正在尝试从由两件事定义的日志文件中提取错误行。日志文件行如下所示:

错误分两行描述,所以我需要过滤错误和当前小时,然后将其复制到文件中。此代码确实复制了所有错误,但不仅仅是从当前时间开始。

所以我想知道,如何将多个变量放入-Pattern中,或者是否有其他解决方案来解决这个问题。

0 投票
1 回答
39 浏览

powershell - Powershell 没有准确显示结果(IP 地址)

我试图得到公正1.1.2.1,但它也向我展示了ip其他

我的测试代码是

  • test2.log

    /li>
  • 结果

    /li>

我不知道为什么它显示给我test102,test105

请任何人告诉我如何解决这个问题

我试过这个Powershell v2,v3


对不起,我忘了解释原始代码的一部分

{$pinghostname = 获取内容 $HOSTS |Select-String -Pattern "$ip" | %{($_ -split " tt")[1]}

“1.1.2.1”应该是一个 $ip

这意味着我不能使用正则表达式

0 投票
1 回答
4086 浏览

windows - 在powershell windows 8中搜索具有双引号的字符串

我有一个包含以下内容的文件 -

我想搜索type="Text"

我尝试了 Select-String 与 -pattern 选项的许多值,但总是得到错误 -

命令 -

错误 -

有人能告诉我如何修改我的命令来搜索这样一个带有双引号的字符串吗?

0 投票
4 回答
184 浏览

regex - Powershell3:识别并显示 ascii 文件中的最后 n 行

我认为这应该很简单。我将日志输出写入xcopy纯文本文件,并 "++++++++++++++++++++Tue 07/03/2018 0900 PM"在每次每日备份之前将每日分隔符(字面意思)附加到日志文件中。所以文件中的最后几行通常如下所示:

每日分隔符

新的一天会附加一个新的分隔线,依此类推。

我想显示 LAST 分隔符及其后面的行eof

我尝试过的架构GET-Content, Select-String -Context 0,20不起作用,

PS说我的搜索字符串++++++++++++++++++++++不是正则表达式,无法识别路径等。有什么帮助吗?

记忆和时间不是问题。对不起,如果这太简单了。

0 投票
1 回答
2126 浏览

powershell - PowerShell Select-String 上下文不适用于从非 PowerShell 命令通过管道传输的输出

我正在尝试Select-String在 PowerShell 中使用来查看docker inspect命令的结果,但该Context属性似乎无法正常工作。

如您所知,docker inspect返回正常的 JSON 作为输出,例如:

在没有任何附加参数的情况下运行sls(别名):Select-String

在此处输入图像描述

并运行它Context

在此处输入图像描述

如您所见,输出是相同的,我在输出中看不到前后行

我可以用来grep做我想做的事;例如,

输出grep

在此处输入图像描述

但我想知道为什么Select-String不起作用。


更新

正如@iRon 建议的那样,我什至尝试将输出保存到文件中,然后Select-String在文件上使用(示例文件):

在此处输入图像描述

所以,我真的很困惑发生了什么。因为对于@iRon,它工作正常。


更新 2

我注意到如果我做这样的事情:

然后当我查看$result[0].Context.PreContext(and PostContext) 时,它们在输入中包含前后行,但由于某种未知原因,它们没有打印到控制台

0 投票
4 回答
2561 浏览

arrays - 从 Select-String 中取出每一行的最后一个单词

我遇到了从文件中提取文本的问题。这是我最终想做的事情:

  1. 在特定文件中搜索短语“NoRequest”的实例。
  2. 只取 NoRequest 的值。即如果NoRequest = true,那么它只会将“true”添加到数组中,而不是整行。
  3. 对文件中短语的每个实例执行此操作。

这是我正在处理的部分的片段:

当我使用那条线时,我得到以下信息:

这就是我想要得到的:

我尝试将代码导入Select-Object -Last 1解决方案,但由于我的变量是一个数组,它选择数组中的最后一行,而不是每行的最后一个单词。我还想过只取数组并做一个“数组中的 foreach 行,除最后一个单词之外的所有内容”。我猜这会起作用,但它似乎是一个笨拙的解决方案。我确信有一个简单有效的解决方案,但我只是没有看到它。