提问人:Henrik Rosqvist 提问时间:10/3/2023 最后编辑:Henrik Rosqvist 更新时间:10/4/2023 访问量:101
Powershell - 将文件夹及其所有内容移动到另一个文件夹
Powershell - move folders and all its contents to another folder
问:
我有一个文件夹 H:\FAKTURA,里面有一堆文件夹。 在同一个文件夹中,我有一个名为“ARKIV”的文件夹。 我想将此文件夹中的所有文件夹移动到“ARKIV”文件夹。
我有以下内容,但没有任何反应,没有错误,没有移动文件夹/文件
$current_logfiles = "H:\FAKTURA\"
$destination = "H:\FAKTURA\ARKIV\"
if ((Test-Path -Path $destination))
{
Move-Item -Path $current_logfiles -Destination $destination -
Exclude "H:\FAKTURA\ARKIV" -force
}
我收到“拒绝访问路径”H:FAKTURA“的信息 我在这里错过了什么..?我对此文件夹具有完全访问权限,我可以手动执行此操作。我也以管理员身份运行 powershell,但没有成功:(
答:
0赞
leafy911
10/3/2023
#1
你说 H:\FAKTURA\ARKIV 这意味着 Test-Path -path $destination将返回为 True。问题是你否定了结果!(Test-Path -path $destination),它将以 False 的形式返回,因此 If 语句将不起作用。删除“!()'
评论
0赞
Henrik Rosqvist
10/3/2023
嗨,现在我得到了“对路径 H:\Faktura 的访问被拒绝”我对这个文件夹有完全的访问权限,可以在这里手动移动/复制/删除文件
1赞
leafy911
10/4/2023
这是因为您试图将 H:\FAKTURA\ARKIV 复制回自身。您必须将其从命令 -Exclude “H:\FAKTURA\ARKIV” 中排除
0赞
Henrik Rosqvist
10/4/2023
像这样修改它以排除文件夹本身,但相同的错误 - “访问路径 H:\FAKTURA” 被拒绝 $current_logfiles = “H:\FAKTURA\” $destination = “H:\FAKTURA\ARKIV\” if ((test-path -path $destination)) { move-item -path $current_logfiles -destination $destination -exclude “H:\FAKTURA\ARKIV” -force }
0赞
Henrik Rosqvist
10/4/2023
即使我只是执行这个简单的命令,我也会得到“对路径 H:\Faktura 的访问被拒绝 Move-Item -Path ”H:\FAKTURA“ -Destination ”H:\FAKTURA\ARKIV“ -EXCLUDE ”H:\FAKTURA\ARKIV”
0赞
leafy911
10/5/2023
您无法将文件夹移动到其内部的位置,这没有意义,因此您会收到拒绝访问错误。
评论
ARKIV
ARKIV
¯\_(ツ)_/¯