首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用powershell进行敏感词搜索

使用powershell进行敏感词搜索
EN

Stack Overflow用户
提问于 2019-06-13 02:31:35
回答 1查看 478关注 0票数 0

我对PowerShell有些陌生,所以如果有任何帮助,我将不胜感激。我正在尝试将PS脚本组合在一起,以便在将文件从一个网络传输到另一个网络之前搜索敏感字。喜欢‘分类’和多个其他的词,我可以添加到一个文本文件中的词库,但每次更新代码

现在,我被迫使用PS 2、windows 7和server 2008

代码语言:javascript
复制
Select-String -Path e:\transfer_folder\*.* -pattern Classified,restricted

然后,我可以获得单词列表上任何匹配的输出,这样我就可以找到它们。我正试图通过我喜欢的脏字搜索来加快我对数百页文档的搜索速度,这样我就不会把不应该放到错误的网络上。

EN

回答 1

Stack Overflow用户

发布于 2019-06-13 12:18:23

你的想法很正确。powershell中的-Pattern tack通常可以调用来处理正则表达式。如果您从未使用过正则表达式,请查看此beginner's guide to using regex pattern matching。您可能需要的是一组变量,您可以使用这些变量动态地挑选出那些敏感的关键字。

简短而简单的答案是,您希望使用管道来分隔pattern的选项,并将其作为字符串传递。

Select-String -Path e:\transfer_folder\*.* -pattern "Classified|Restricted"

此外,您可能希望考虑在文件级执行此操作,而不是像这样将所有内容导入到willynilly中。我会选择这样的东西:

$files = @(Get-ChildItem -Path E:\transfer_folder\ -Filter "*.txt|*.etc").FullName

( @符号表示以数组形式获得输出。.FullName意味着您只从该命令生成的对象中选择FullName字段。)

然后,您可以单独处理每个文件,如下所示:

代码语言:javascript
复制
Foreach ($file in $files) {
   Write-Host "Processing $file"
   echo (Select-String -Path $file -Pattern $pattern) 
}

我喜欢powershell的原因之一是执行这些类型的匹配操作相对容易。如果深入研究Regex,您会注意到可以将"OR“表示为"|”。因此,您有两个逻辑上的选择:

  1. 只是硬写出来

$pattern = "Classified|Forbidden|Death|Danger"

  1. Do it dynamically

脚本就是不需要做一次以上的事情,对吧?所以你可能想把它封装在一个函数或者其他什么东西里。或者您可能想要从文本文件中获取单词?你可以这样:(可能需要一些调整)

代码语言:javascript
复制
function Get-ForbiddenWords ([string[]]$words, [string]$folder) {
   ForEach ($word in $words) {
      $pattern += "$word|" 
    }
    #remove trailing pipe
    $pattern -replace ".$"
    $files = @(Get-ChildItem -Path $folder -Filter "*.txt|*.etc").FullName
    Foreach ($file in $files) {
       Write-Host "Processing $file"
       echo (Select-String -Path $file -Pattern $pattern) 
    }
}

现在,您可以将其放入您的powershell配置文件中,并使用以下命令调用它

Get-ForbiddenWords -words secret dangerous whatever -folder E:\transfer_folder\

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56568388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档