system_configuration/capture.ps1
2023-03-30 02:15:51 -07:00

34 lines
1010 B
PowerShell

$path = $PSScriptRoot
Write-Host "Capturing files begin"
$rootCaptureFolder = Join-Path -Path $path -ChildPath "root"
if (-not (Test-Path -Path $rootCaptureFolder)) {
Write-Host "Could not find [$rootCaptureFolder]"
return
}
$captureListFile = Join-Path -Path $path -ChildPath "capture.filelist"
$fileList = Get-Content -Path $captureListFile
foreach ($file in $fileList) {
$files = @()
if ($file.IndexOf('/*') -gt -1) {
$files = Get-ChildItem -Path $file -Recurse
} else {
$files = Get-ChildItem -Path $file
}
foreach ($file in $files) {
Write-Host "Found $($file.FullName)"
$targetCopy = Join-Path $rootCaptureFolder -ChildPath $file.FullName
$targetParent = Split-Path -Path $targetCopy -Parent
if (-not (Test-Path -Path $targetParent)) {
New-Item -ItemType Directory -Path $targetParent -Force | Out-Null
Copy-Item -Path $file.FullName -Destination $targetParent
}
}
}
chown go:go ./* -R