2010-04-02 9 views

Respuesta

4

Desafortunadamente no :-(Actualmente los comandos de PowerShell están dirigidas a un mayor nivel de granularidad.

Sin embargo ...

Usted puede escribir sus propios cmdlets de PowerShell, lo que puede añadir los extras que necesita :-)

Hay mucha información en la web acerca de writing custom cmdlets pero como guía general será algo como esto. Cree un nuevo proyecto de biblioteca de clase en el idioma de su elección. Agregue una referencia a System.Management.Automation.dll; puede encontrarlo en C: \ Program Files \ Reference Assemblies \ Microsoft \ Powershell \ 1.0. Cree una clase que herede desde Cmdlety y también tiene el atributo Cmdlet. Reemplace el método ProcessRecord y agregue el código para hacer lo que necesita hacer. Para pasar los parámetros de Powershell necesita agregar propiedades a su clase y marcarlas con el atributo Parameter. Debería ser algo como esto:

Imports System.Management.Automation 
Imports Microsoft.ApplicationServer.Caching 

<Cmdlet(VerbsCommon.Remove, "CacheItem")> _ 
Public Class RemoveCacheItem 
    Inherits Cmdlet 

    Private mCacheName As String 
    Private mItemKey As String 

    <Parameter(Mandatory:=True, Position:=1)> _ 
    Public Property CacheName() As String 
     Get 
      Return mCacheName 
     End Get 
     Set(ByVal value As String) 
      mCacheName = value 
     End Set 
    End Property 

    <Parameter(Mandatory:=True, Position:=2)> _ 
    Public Property ItemKey() As String 
     Get 
      Return mItemKey 
     End Get 
     Set(ByVal value As String) 
      mItemKey = value 
     End Set 
    End Property 

    Protected Overrides Sub ProcessRecord() 

     MyBase.ProcessRecord() 

     Dim factory As DataCacheFactory 
     Dim cache As DataCache 

     Try 
      factory = New DataCacheFactory 

      cache = factory.GetCache(Me.CacheName) 

      Call cache.Remove(Me.ItemKey) 
     Catch ex As Exception 
      Throw 
     Finally 
      cache = Nothing 
      factory = Nothing 
     End Try 

    End Sub 

End Class 

Una vez que haya creado el archivo DLL, puede agregarlo a PowerShell con el cmdlet Import-Module.

+0

@PhilPursglove - Gracias. ¿Alguna idea sobre cómo empezar a usar Powershell para Appfabric? ¿Hay algún libro o tutorial para guiar a un principiante durante el proceso? – DotnetDude

+0

@DotNetDude Eche un vistazo a http://mdcadmintool.codeplex.com/ -es una GUI que se encuentra en la parte superior de los comandos de Powershell – PhilPursglove

Cuestiones relacionadas