A volte quando sto scrivendo uno script sul mio Windows 10 Machine (PowerShell 5.0) utilizzo comandi, parametri o alias che non sono disponibili nelle versioni precedenti di PowerShell, ad esempio il parametro -persist
di new-psdrive
non è disponibile su PowerShell 2.0, il tutto delle nostre macchine Win7.Posso controllare quale versione ha bisogno del mio script PS?
per impostare correttamente l'istruzione #requires -version x
, ho bisogno di sapere se ci sono comandi nel mio script che non sono disponibili per versioni precedenti di PowerShell. Quando hai scritto un codice con 1000 righe, potrebbe essere un po 'difficile trovare comandi non disponibili nel tuo script.
C'è un modo per controllare questo a livello di codice, oltre a eseguire lo script in diversi ambienti PowerShell e vedere cosa sta succedendo?
Sarebbe piuttosto difficile; per esempio. confronta '$ a = @ ('ab', 'bc'); $ a.Replace ('b', '') 'su PSv4 e PSv2 ('a', 'c') vs messaggio di errore. Eppure '$ a.Replace ('b', '')' è ancora una cosa valida da fare in PSv2. Se '$ a = Ottieni-Qualunque' da un modulo, come potrebbe sapere se il tuo Sostituire era valido o non valido? – TessellatingHeckler
Windows 7 Service Pack 1 può essere "esaminato" fino a Powershell 5.0. Mi piacerebbe solo mordere il proiettile e aggiornare tutto. –