PowerShell/demos/crontab/crontab.ps1

28 lines
1.1 KiB
PowerShell
Raw Normal View History

2016-07-20 22:49:44 +02:00
Import-Module $PSScriptRoot/CronTab/CronTab.psd1
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Remove all jobs to start, no prompting"
Get-CronJob | Remove-CronJob -Force
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Get the existing cron jobs"
Get-CronJob | Out-Host
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "New cron job to clean out tmp every day at 1am"
New-CronJob -Command 'rm -rf /tmp/*' -Hour 1 | Out-Host
2016-07-20 22:49:44 +02:00
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Add some more jobs"
New-CronJob -Command 'python -c ~/scripts/backup_users' -Hour 2 -DayOfWeek 1-5 | Out-Host
New-CronJob -Command 'powershell -c "cd ~/src/PowerShell; ipmo ./build.psm1; Start-PSBuild"' -Hour 2 -DayOfWeek * | Out-Host
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Show in bash that the new cron job exists"
2016-07-20 22:49:44 +02:00
crontab -l
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Get jobs that run every day"
Get-CronJob | Where-Object { $_.DayOfWeek -eq '*' -or $_.DayOfWeek -eq '1-7' } | Out-Host
2016-07-20 22:49:44 +02:00
2016-07-21 18:56:14 +02:00
Write-Host -Foreground Yellow "Remove one cron job, with prompting to confirm"
Get-CronJob | Where-Object { $_.Command -match '^powershell.*' } | Remove-CronJob | Out-Host
Write-Host -Foreground Yellow "And the other job remains"
Get-CronJob | Out-Host