簡體   English   中英

在PowerShell中復制多個文件夾時,如何更改文件夾的名稱?

[英]How to change name of the folders when copying multiple folders in PowerShell?

這是我現在的代碼:

[int]$NumberOfProfiles = Read-Host "Enter the number of Portable Firefox profiles You need"
$WhereToWrite = Read-Host "Enter the full path where You'd like to install the profiles" 
$Source = Get-Location 
$FolderName = "JonDoFoxPortable"
$SourceDirectory = "$Source\$Foldername"
$Copy = Copy-Item $SourceDirectory $WhereToWrite -Recurse -Container
while ($NumberOfProfiles -ge 0) {$Copy; $NumberOfProfiles--}

正如您現在所看到的,它只是覆蓋了文件夾,但是我需要它復制在$NumberOfProfiles聲明的一定數量的文件夾(例如$NumberOfProfiles = 10 ),它使JonDoFoxPortable1,JonDoFoxPortable2 ... JonDoFoxPortable10 ...

這樣的事情應該起作用:

while ($NumberOfProfiles -ge 0) {
  $DestinationDirectory = Join-Path $WhereToWrite "$Foldername$NumberOfProfiles"
  Copy-Item $SourceDirectory $DestinationDirectory -Recurse -Container
  $NumberOfProfiles--
}

或者,也許更簡單,像這樣:

0..$NumberOfProfiles | % {
  $DestinationDirectory = Join-Path $WhereToWrite "$Foldername$_"
  Copy-Item $SourceDirectory $DestinationDirectory -Recurse -Container
}

這應該為您做:

更換:

while ($NumberOfProfiles -ge 0) {$Copy; $NumberOfProfiles--}

與:

(0..$NumberOfProfiles) | % {
    Copy-Item $SourceDirectory "$WhereToWrite$_" -Recurse -Container
}

這將從0到$NumberOfProfiles循環,並復制到名為$WhereToWrite的位置,並將迭代編號附加到$_

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM