gpt4 book ai didi

powershell - Powershell复制项目标不明确

转载 作者:行者123 更新时间:2023-12-02 23:20:00 24 4
gpt4 key购买 nike

假设“C:\ Temp \ first.txt”是一个文件,是否有某种方法可以确保

Copy-Item -Path "C:\Temp\first.txt" -Destination "C:\Temp\second.txt"

创建文件“C:\ Temp \ second.txt”,否则失败?如果目标“C:\ Temp \ second.txt”已作为目录存在,则我不希望它创建文件“C:\ Temp \ second.txt \ second.txt”。

有没有不容易受到比赛条件影响的解决方案?

最佳答案

您可以使用Copy-Item参数运行-PassThru,并在结果的目录路径与目标文件夹相同时抛出错误:

$src = 'C:\Temp\first.txt'
$dst = 'C:\Temp\second.txt'
try {
$f = Copy-Item -Path $src -Destination $dst -PassThru
if ($f.DirectoryName -eq $dst) {
throw "$dst already exists as a folder."
}
} catch {
Remove-Item $f
throw $_
}

除此之外,我想不出没有比赛条件的任何东西。这也具有以下缺点:无论创建副本,还是在错误的位置创建副本,都将删除副本。

关于powershell - Powershell复制项目标不明确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53599655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com