Domanda

Sono nuovo di PS così che io possa avere un po 'della terminologia sbagliata.

Se si vuole stendere un ambiente PowerShell personalizzato (snap-in) per un team di 30 sviluppatori / amministratori di database. Qual è il modo migliore per fare questo ... se avete intenzione di essere a rotazione fuori nuove funzionalità una volta alla settimana? Fa PowerShell 2.0 aiuto in questa materia?

Ipotesi:
Non v'è alcun problema con tutti i membri del team di installazione di PowerShell (v1 o v2)

Aggiorna : Si veda anche la risposta di Jeffrey Snover su v2 di seguito.

È stato utile?

Soluzione

Essa dipenderà in una certa misura sul tipo di modifiche alle funzionalità che si intende fare. Per il nostro ambiente, abbiamo roll out di un PS piuttosto standard install quindi aggiungere una riga al profilo di tutti per eseguire uno script da una cartella condivisa su un server. Poi in quello script posso fare quello che voglio personalizzazione di aver applicato a tutti.

Aggiungiamo la linea alla macchina profilo MS specifico (quello in% windir%) questa è stata una scelta intenzionale. Lo facciamo in questo modo in modo che gli utenti essenzialmente solo ottenere questo sul loro scatole di produzione. In questo modo quando scrivono qualcosa che può accedere rapidamente in una casella di prova ed eseguire lo script per assicurarsi che lo script sarà distribuire senza dipendenze anzi su queste personalizzazioni.

Al momento le personalizzazioni sono piuttosto banali. Per lo più solo alcune funzioni aggiunte e gli alias. Ho anche un registratore che ho scritto in C # appositamente per PowerShell così carica che fino dalla DLL che si trova nella stessa cartella di rete.

Perché giocare con il mio ambiente così tanto, ho questo nel mio profilo:)

$ProfileDir = ([System.IO.Directory]::GetParent($profile)).FullName
$localMSProfile = "$PShome\Microsoft.Powershell_profile.ps1"
$localAllProfile = "$PShome\profile.ps1"
$userAllProfile = "$ProfileDir\profile.ps1"
$userMSProfile = "$ProfileDir\Microsoft.Powershell_profile.ps1"
$allProfiles = ($localAllProfile, $localMSProfile, $userAllProfile, $userMSProfile)

Altri suggerimenti

Questo è il motivo per cui abbiamo aggiunto supporto per i moduli in PowerShell V2 - è il meccanismo più semplice per distribuire xcopy set di funzioni. La documentazione Module è abbastanza chiaro, a questo punto, ma dovrebbe essere molto meglio in un mese o due.

Esperimento! Godere! Engage!

Jeffrey Snover [MSFT] Windows Management Partner Architetto

Se si sta lanciando una nuova versione dello snap-in settimanale, la versione di commutazione probabilmente non aiuterà con quella parte delle cose. Tuttavia, ti verrà sviluppando su una piattaforma più recente, con il vantaggio della funzionalità estese che viene con esso.

Come già suggerito alcuni script potrebbe alleviare il dolore distribuzione fino al punto in cui devi fare altro che mantenere correttamente questi script e continuare a produrre nuove costruzioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top