win10脚本 | 使用 Word 自动化对象模型找出指定路径下含有特定内容的.docx

场景

今年的实验日志被我放在这样一个文件夹下,每个月下是每天具体的.docx文件,里面记录了我的一些实验操作步骤。现在我需要补充一个实验,用到一个名为chatunitest的插件,但是这是很久之前做的事情了,我无法判断是哪个月哪一天。所以我需要一个能够在powershell中执行的脚本,帮助我找到日志,复用之前的操作步骤。

脚本

执行条件:安装了word就行

bash 复制代码
$directoryPath = "C:\实验日志\2023"
$searchKeyword = "chatunitest"
$word = New-Object -ComObject Word.Application
$word.Visible = $false

Get-ChildItem -Path $directoryPath -Recurse -Filter *.docx | ForEach-Object {
    $document = $word.Documents.Open($_.FullName)
    $text = $document.Range().Text
    $document.Close()

    if ($text -match $searchKeyword) {
        Write-Output "Found in file: $($_.FullName)"
    }
}

$word.Quit()

执行结果

成功找了包含chatunitest的日志,并返回了它们的路径。

相关推荐
明湖起风了6 小时前
mqtt消费堆积
java·jvm·windows
私人珍藏库6 小时前
[Windows] 【灵犀Claw生成】酷狗加密音乐批量转换工具 Xy Music Converter
windows·工具·软件·多功能
handsomestWei8 小时前
claude-code在win环境安装使用
windows·ai编程·claude·安装配置·cc-switch
秦时明月之君临天下9 小时前
Windows如何删除任务管理器中的某个服务?
windows
麦田里的守望者_zhg9 小时前
Windows 执行 wsl --update 报错 1603:注册表权限导致 WSL 安装损坏问题排查与修复
windows
❆VE❆11 小时前
Claude Code 安装与配置完整指南(Windows)
windows·claude code
航Hang*11 小时前
VMware vSphere 云平台运维与管理基础——第5章:VMware vSphere 5.5 高级特性
运维·服务器·开发语言·windows·学习·虚拟化
Mapleay12 小时前
Ubuntu 源的重要性!之 libgmp-dev 无法安装
linux·服务器·windows
humors22112 小时前
微软工具包下载网址
windows·microsoft·微软·office·工具包·sysintervals
寺中人12 小时前
硬盘提示初始化的损坏,手动恢复MBR及EBR分区教程
windows·工具·硬盘修复