Ciao a tutti,
ho notato una anomalia (a mio avviso :) ) nell'esecuzione delle operazioni pianificate: Spiego dall'inizio.
1) Ho creato uno script powershell e e ho salvato come Scrip_eliminazione_vecchie_cartelle.ps1
il contenuto è questo:
date
echo -
echo -
echo -
echo "cambio cartella e vado ad eseguire pulizia su r:"
cd "r:\"
Get-ChildItem "r:\" | Where-Object { $_.PSIsContainer} | ForEach-Object {Get-ChildItem $_ | Where-Object {$_.PSIsContainer} | Sort-Object -Descending | Select-Object -Skip 4 | Remove-Item -Recurse -WhatIf}
echo -
echo -
echo "cambio cartella e vado ad eseguire pulizia su s:"
cd "s:\"
Get-ChildItem "s:\" | Where-Object { $_.PSIsContainer} | ForEach-Object {Get-ChildItem $_ | Where-Object {$_.PSIsContainer} | Sort-Object -Descending | Select-Object -Skip 4 | Remove-Item -Recurse -WhatIf}
c:
# ping -n 10 www.tim.it
echo -----------------------------------------------------------------------------
echo -----------------------------------------------------------------------------
2) in seguito ho creato uno script batch per lanciare lo script powershell da operazioni pianificate con questo contenuto e salvato come Scriptpulizia.bat:
powershell.exe "&'C:\ScriptPulizia\Scrip_eliminazione_vecchie_cartelle.ps1'" >> C:\ScriptPulizia\log.txtora: se lancio lo script a mano funziona corretamente, se lo lancio da operazioni peinificate ottengo questo log:
gioved 13 maggio 2010 16:31:05
-
-
-
cambio cartella e vado ad eseguire pulizia su r:
Set-Location : Impossibile trovare l'unit…. Un'unit… con nome 'r' non esiste.
In C:\ScriptPulizia\Scrip_eliminazione_vecchie_cartelle.ps1:6 car:3
+ cd <<<< "r:\"
+ CategoryInfo : ObjectNotFound: (r:String) [Set-Location], Drive
NotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetL
ocationCommand
Get-ChildItem : Impossibile trovare l'unit…. Un'unit… con nome 'r' non esiste.
In C:\ScriptPulizia\Scrip_eliminazione_vecchie_cartelle.ps1:7 car:14
+ Get-ChildItem <<<< "r:\" | Where-Object { $_.PSIsContainer} | ForEach-Object
{Get-ChildItem $_ | Where-Object {$_.PSIsContainer} | Sort-Object -Descending
| Select-Object -Skip 4 | Remove-Item -Recurse -WhatIf}
+ CategoryInfo : ObjectNotFound: (r:String) [Get-ChildItem], Driv
eNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.GetC
hildItemCommand
-
-
cambio cartella e vado ad eseguire pulizia su s:
Set-Location : Impossibile trovare l'unit…. Un'unit… con nome 's' non esiste.
In C:\ScriptPulizia\Scrip_eliminazione_vecchie_cartelle.ps1:11 car:3
+ cd <<<< "s:\"
+ CategoryInfo : ObjectNotFound: (s:String) [Set-Location], Drive
NotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetL
ocationCommand
Get-ChildItem : Impossibile trovare l'unit…. Un'unit… con nome 's' non esiste.
In C:\ScriptPulizia\Scrip_eliminazione_vecchie_cartelle.ps1:12 car:14
+ Get-ChildItem <<<< "s:\" | Where-Object { $_.PSIsContainer} | ForEach-Object
{Get-ChildItem $_ | Where-Object {$_.PSIsContainer} | Sort-Object -Descending
| Select-Object -Skip 4 | Remove-Item -Recurse -WhatIf}
+ CategoryInfo : ObjectNotFound: (s:String) [Get-ChildItem], Driv
eNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.GetC
hildItemCommand
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
sembra che da operazioni painificate non lavori corretamente powershell.
avete qualche dritta da darmi??
PS: il doppio script annidato l'ho dovuto usare in quanto non sono riuscito in nessuna maniera a lanciare lo script powershell direttamente da operazioni painificate... magari se mi date una mano posso evitarlo.... :)
grazie a tutti in anticipo.