migrate to git.charlotte.sh
This commit is contained in:
commit
fbd588721e
412 changed files with 13750 additions and 0 deletions
74
automation-sys320/week07/Configuration.ps1
Normal file
74
automation-sys320/week07/Configuration.ps1
Normal file
|
@ -0,0 +1,74 @@
|
|||
#10/12/24
|
||||
|
||||
function readConfiguration(){
|
||||
Set-Location "C:\Users\champuser\SYS320\week7"
|
||||
$configs = (Get-Content -Path ./configuration.txt)
|
||||
$days = $configs[0]
|
||||
$time = $configs[1]
|
||||
return [PSCustomObject]@{
|
||||
Days = $days
|
||||
ExecutionTime = $time
|
||||
}
|
||||
}
|
||||
|
||||
function changeConfiguration(){
|
||||
$daysBack = Read-Host -Prompt "Number of days for which the logs will be obtained"
|
||||
if($daysBack -notmatch '^[0-9]+$'){
|
||||
Write-Host "invalid input. digits only" | Out-String
|
||||
continue
|
||||
}
|
||||
|
||||
$executionTime = Read-Host -Prompt "Daily execution time of the script"
|
||||
if($executionTime -inotmatch '^(1?[1-9]):([0-5][0-9])\s(AM|PM)$'){
|
||||
Write-Host "invalid input. digit:digitdigit am/pm allowed" | Out-String
|
||||
continue
|
||||
}
|
||||
|
||||
"$daysBack`n$executionTime" | Set-Content ./configuration.txt
|
||||
Write-Host "Configuration Changed`n" | Out-String
|
||||
}
|
||||
|
||||
#main loop
|
||||
function configurationMenu(){
|
||||
clear
|
||||
|
||||
$Prompt = "`nPlease choose your operation:`n"
|
||||
$Prompt += "1 - Show Configuration`n"
|
||||
$Prompt += "2 - Change Configuration`n"
|
||||
$Prompt += "3 - Exit`n"
|
||||
|
||||
$operation = $true
|
||||
|
||||
while($operation){
|
||||
|
||||
|
||||
Write-Host $Prompt | Out-String
|
||||
$choice = Read-Host
|
||||
|
||||
# exit
|
||||
if($choice -eq 3){
|
||||
Write-Host "Goodbye" | Out-String
|
||||
exit
|
||||
$operation = $false
|
||||
}
|
||||
|
||||
# show configuration
|
||||
elseif($choice -eq 1){
|
||||
$config = readConfiguration
|
||||
$config
|
||||
}
|
||||
|
||||
# change configuration
|
||||
elseif($choice -eq 2){
|
||||
changeConfiguration
|
||||
}
|
||||
|
||||
else{
|
||||
Write-Host "invalid input: 1-3 allowed`n" | Out-String
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
#configurationMenu
|
Loading…
Add table
Add a link
Reference in a new issue