Powershell : Căutare Subdirectorul și copiați fișierul în acel director

0

Problema

Am fost de lucru pe un script Powershell din ultimele 2 săptămâni și nu am făcut prea multe progrese în care.

Deci, eu sunt încercarea de a copia un fișier numit versiune.proprietăți din rădăcina mea gradle proiect la Subdirectoare ca "src/main/resurse", "src/main/webapp" și "src/main/cerere". Daca am codul de greu drumul e de lucru, dar im încercarea de a face generic de către găsirea de director și copierea fișierul meu în acel director.

Vreau versiunea mea.properties pentru a fi copiate la "resurse","webapp" și "cerere" director dupa ce am rulat mea powershell script.

Cum pot face asta? Orice sugestii sunt apreciate.

$SourceDirectory = "Projectroot\version.properties"
$folders = gci $SourceDirectory -Recurse -Directory
$jar = "src/main/resources"
$ear = "src/main/application"
$war = "src/main/webapp"
    
foreach ($folder in Sfolders) {
    if (Test-Path $folder/$jar) {
        write-host "copying to $folder/$jar"
        Copy-Item-Path "{$SourceDirectory}\version.properties" -Destination $folder/$jar -Recurse -Force
    }
    
    elseif (Test-Path $folder/$ear) {
        write-host "copying to $folder/$ear"
        Copy-Item-Path "{$SourceDirectory}\version.properties" -Destination $folder/$ear -Recurse -Force
    }
    
    elseif (Test-Path $folder/$war) {
        write-host "copying to $folder/$war"
        Copy-Item-Path "{$SourceDirectory}\version.properties" -Destination $folder/$war -Recurse -Force
    }
    
    else {
        Write-Host "No such path"
    }
}
1

Cel mai bun răspuns

0

Presupunând că aceasta este calea structura unui proiect:

#ProjectRoot
#ProjectRoot\version.properties <--- File
#ProjectRoot\src
#ProjectRoot\src\main  
#ProjectRoot\src\main\application
#ProjectRoot\src\main\resources
#ProjectRoot\src\main\webapp

Următorul script va face ceea ce cauți.


$SourceDirectory = "C:\temp\Projectroot"
$DestinationDirectories = 'resources','application','webapp'

foreach ($I in $DestinationDirectories) {
    $CurrentDest = "$SourceDirectory\src\main\$I"
    if (Test-Path -Path $CurrentDest) {
        Copy-Item -Path "$SourceDirectory\version.properties" -Destination $CurrentDest
    } else {
        Write-Warning "Path not found: $CurrentDest"
    }
}

Dacă nu am lua calea structura, vă rugăm să clarificați care este. Presupun de asemenea că "principalul" este un statice cheie aici, dar dacă nu este, că script-ul ar putea avea nevoie să fie ajustate pentru a reflecta faptul că.

2021-11-24 09:16:44

Acest lucru ajută. Multumesc
Abhinandan RK

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................