在完成一些在线课程之后,我对Powershell脚本还很陌生,并且我被设置为清除模板备份文件夹并将现有模板移至备份文件夹的任务。
我创建的脚本本身没有问题(希望如此),但是,我们希望该脚本可同时用于PROD和DEVTEST环境-文件路径各不相同。
如何为systemfiles文件夹的文件路径创建变量?
我可以有两个单独的变量,但想将其作为一个变量。
任何帮助将不胜感激。谢谢
$ErrorActionPreference = "Stop"
. "$PSScriptRoot\functions.ps1"
$consul_address = $env:bamboo_consul_address
$our_environment = $env:bamboo_our_environment
$location = $env:bamboo_location
$systemfilespath =
"\\oursite.com\shares\APPSystemFiles\${our_environment}" # DEVTEST env locations
"\\oursite\applications\APPLICATIONNAME\Systemfiles\${our_environment}" # PROD env locations
{
Write-Host "Clearing the content on Printing Template Backups from ${our_environment}"
Remove-Item "${systemfilespath}\PrintingRoot\PrintingTemplateBackup/*"
(Move-Item -Path "${systemfilespath}\PrintingRoot\PrintingTemplate/*")
| ForEach-Object
Write-Host "Backing up Printing Template Backup file with Printing Template
file from ${our_environment}"
| Set-Content -Path
"${systemfilespath}\PrintingRoot\PrintingTemplateBackup/*"
}
答案 0 :(得分:0)
如果您需要选择一定数量的选项,并且脚本将手动触发以启动,则可以提示您输入想要影响的位置。
$systemfilespath = Read-Host -Prompt "Choose a Location"
Switch ($systemfilespath){
1 {CLS ; Write-Host -ForegroundColor Green "\\oursite.com\shares\APPSystemFiles\${our_environment}"} # or a desc
2 {CLS ; Write-Host -ForegroundColor Green "\\oursite\applications\APPLICATIONNAME\Systemfiles\${our_environment}"} # or a desc
}