PowerShell执行Copy-Item命令为何提示找不到文件错误?
PowerShell复制Chrome书签脚本本地运行异常排查
同一份脚本在其他同事设备可正常执行,仅本地运行触发报错,已确认本地PowerShell执行策略与其他测试人员配置完全一致,涉及脚本代码如下:
$file = "$env:userprofile\appdata\local\google\chrome\user data\default\bookmarks" Copy-Item $file c:\temp
排查及修复方案
按以下优先级逐一验证:
- 确认Chrome是否处于运行状态
Chrome启动后会独占锁定用户数据目录下的Bookmarks书签文件,进程未完全退出时直接复制该文件会触发文件占用报错。打开任务管理器找到所有Chrome相关进程全部结束,再重新执行脚本即可。 - 确认目标目录
C:\temp是否存在Copy-Item默认不会自动创建不存在的目标路径,若C盘根目录下未手动创建temp文件夹,会触发路径不存在报错。先执行以下命令创建目标目录,再运行复制脚本:New-Item -Path c:\temp -ItemType Directory -Force - 确认本地Chrome书签路径是否匹配
若你修改过Chrome用户数据存储位置、或使用Chrome Dev/Canary等特殊渠道版本,默认路径下不存在书签文件会触发找不到文件报错。直接在资源管理器地址栏输入%userprofile%\appdata\local\google\chrome\user data\default\,确认路径下是否存在bookmarks文件,不存在则替换为实际的书签文件存储路径即可。 - 确认访问权限正常
检查当前登录Windows账号对Chrome书签文件、C:\temp目录是否具备读取、写入权限,权限不足也会导致复制操作失败。
内容的提问来源于stack exchange,提问作者Dvivolo
相关产品推荐
相关产品推荐

