You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell复制用户文件夹脚本报错:无法找到C盘驱动器

解决PowerShell复制文件时的「找不到驱动器」错误

看起来你遇到的问题很典型——那个报错里的'‪c'不是正常的C盘标识,而是路径里混入了不可见的特殊字符(比如零宽空格或者全角符号),导致PowerShell把它当成了一个不存在的驱动器名。我来帮你修正这个脚本,顺便优化一下逻辑:

第一步:排查并修复路径问题

你脚本里的"‪c:\Users\$user\Desktop\*"前面的c:带有隐藏字符,最简单的解决方法是手动重新输入整个路径,不要直接复制粘贴;或者更稳妥的是用PowerShell的环境变量来获取用户目录,完全避免路径拼写错误:

比如用$env:USERPROFILE代替C:\Users\$user,它会自动指向当前用户的主目录,不管系统安装在哪个盘。

第二步:修正后的完整脚本示例

下面是一个更可靠的版本,包含你需要的Documents、Photos、Desktop文件夹复制,还会自动创建目标文件夹:

# 定义目标根路径
$targetRoot = "D:\mapp1"
# 获取当前用户名(也可以手动指定,比如$user = "sebbe")
$user = $env:USERNAME
# 目标用户文件夹路径
$targetUserFolder = Join-Path -Path $targetRoot -ChildPath $user

# 自动创建目标文件夹(如果不存在)
if (-not (Test-Path -Path $targetUserFolder)) {
    New-Item -Path $targetUserFolder -ItemType Directory | Out-Null
}

# 定义需要复制的源文件夹列表
$sourceFolders = @(
    Join-Path -Path $env:USERPROFILE -ChildPath "Desktop",
    Join-Path -Path $env:USERPROFILE -ChildPath "Documents",
    Join-Path -Path $env:USERPROFILE -ChildPath "Pictures"  # Windows里Photos一般对应Pictures文件夹
)

# 遍历每个源文件夹进行复制
foreach ($folder in $sourceFolders) {
    if (Test-Path -Path $folder) {
        Write-Host "正在复制 $folder 到 $targetUserFolder..."
        # -Recurse 复制子文件夹,-Force 覆盖已存在的文件(根据需要调整)
        Copy-Item -Path "$folder\*" -Destination $targetUserFolder -Recurse -Force -ErrorAction SilentlyContinue
    } else {
        Write-Warning "源文件夹 $folder 不存在,跳过复制"
    }
}

Write-Host "复制操作完成!"

额外注意事项

  • 如果需要复制其他文件夹,直接在$sourceFolders数组里添加对应的路径即可
  • -ErrorAction SilentlyContinue会忽略复制中的错误(比如权限不足的文件),如果需要查看错误,可以改成-ErrorAction Continue
  • 运行脚本时最好右键选择「以管理员身份运行」,避免权限问题

内容的提问来源于stack exchange,提问作者Seb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 07:49:15