0

我需要将 10 个 .ini 文件从 pc 上的不同位置复制到网络共享。我需要在 500 台计算机上运行它。下面的代码效果很好,但问题是它们在每台计算机上都有相同的名称,这会将所有文件放在一个文件夹中。

谁能告诉我如何在下面的代码中添加额外的位置并根据list.txt 中的名称创建一个新文件夹,例如branch01、branch02 等,并将所有ini 文件从branch01 复制到\networkshare\branch01。

Get-Content list.txt | ForEach-Object {
if(Test-Connection $_ -Quiet -Count 1){

Copy-Item "\\$_\c$\windows\test.ini" "\\Networkshare\Branch01"
4

1 回答 1

1
$branch = 1

Get-Content list.txt | ForEach-Object {
    if(Test-Connection $_ -Quiet -Count 1){
        $branch2 = $branch.ToString()
        $folder = $_ + $branch2
        Copy-Item "\\$_\c$\windows\*.ini" "\\Networkshare\$folder"
    }

    $branch = $branch + 1
}

我理解你的问题的方式,应该可以解决你的问题。

编辑:看看这个:

PS C:\> $v1 = "hello"
PS C:\> $v2 = "world"
PS C:\> $v3 = $v1 + $v2
PS C:\> echo $v3
hello world

编辑 2:查看字符串转换

于 2013-09-13T12:03:50.467 回答