0

PC のさまざまな場所から 10 個の .ini ファイルをネットワーク共有にコピーする必要があります。これを 500 台のコンピューターに対して実行する必要があります。以下のコードはうまく機能しますが、問題は、各コンピューターで同じ名前が付けられているため、すべてのファイルが 1 つのフォルダーに配置されることです。

以下のコードに追加の場所を追加し、list.txt の名前 (例: branch01、branch02 など) に基づいて新しいフォルダーを作成し、branch01 のすべての ini ファイルを \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 に答える