PowerShell复制文件报错:找不到指定路径请求协助
问题修复方案
错误原因
- 目标路径格式错误:你定义的
$destinationPath写成了"C:Temp\TEST\PM - Backups\",C:后缺少反斜杠,PowerShell会将其识别为当前驱动器的相对路径,而非C盘根目录下的Temp文件夹。 - 分步操作的风险:先复制再重命名的方式不仅冗余,还容易因路径解析(尤其是带空格的路径)或目标已存在同名文件导致出错。
修正后的代码
直接在复制操作中完成重命名,同时修复路径问题:
$sourcePath = "C:\Pumpmate Fuel Management\PB.MDB" # 修正目标路径的反斜杠,确保为绝对路径 $destinationDir = "C:\Temp\TEST\PM - Backups\" $timestamp = Get-Date -Format "yyyyMMddHHmmss" # 用Join-Path安全拼接带时间戳的目标文件名,避免手动拼接的格式错误 $destinationFullPath = Join-Path -Path $destinationDir -ChildPath "PB_$timestamp.MDB" # 一步完成复制和重命名,-Force参数可按需覆盖已存在的同名文件 Copy-Item -Path $sourcePath -Destination $destinationFullPath -Force
额外验证步骤
- 先确认源文件真实存在:
返回Test-Path "C:\Pumpmate Fuel Management\PB.MDB"True表示文件存在,返回False则需检查源路径是否正确。 - 若目标文件夹尚未创建,提前生成:
New-Item -Path "C:\Temp\TEST\PM - Backups\" -ItemType Directory -Force
内容的提问来源于stack exchange,提问作者GuzzyD
相关产品推荐
相关产品推荐

