PowerShell [Start]
Já vimos que a sua função principal é prover mais poder aos administradores na manutenção de sistemas, além de um controle maior do sistema.
Mas, você sabia que o PowerShell quando acoplado com um aplicativo complexo, como SharePoint abre um mundo de formas interessantes e criativas de troubleshooting e coleta de dados. No entanto, a forma correta de utilizar esse carinha deve determinar uma lógica à ser seguida sempre. Veja:
Com o SP podemos executar operações importantes como:
- Criação de ambientes
- Backup e restore de sites
- Deploy de código
- Deploy de features
- Criação de Site Collections
- etc…
Mas, para executarmos tais operações, temos que nos atentar em alguns detalhes.
A composição do SP
Primeiro detalhe, a composição do SP, em um nível básico:
- um data base config
- alguns data bases de aplicativos services
- um grupo de content data base
- os binários e objetos do file system (existente em cada um dos servidores do SP)
O núcleo do SP existe em SQL e é acessado através de uma API .NET robusta.
Um boa forma para começar é definir o tipo de dados do SP de interesse, e se está lidando com uma boa quantidade de dados, decidir o melhor tipo de armazenamento de dados para armazenar essas informações para uso posterior.
No universo SharePoint temos a possibilidade de trabalhar nestes estágios:
Neste gráfico, temos os substantivos cmdlet para cada nível e o tipo de dados trabalhado neste nível. Isso provê uma boa idéia do ponto de entrada que podemos querer utilizar com base no que precisamos executar.
Note que não têm uma forma direta de acessar os objetos Listas e Itens, isto significa que SPWeb é o ponto de entrada mais baixo para chegar a esses dados.
Com o ponto de entrada em mente, a próxima tarefa é acessar um objeto neste nível usando a sintaxe PowerShell (par) verbo-substantivo padrão:
$site = Get-SPSite http://portal.contoso.com/sites/some_site
Este comando retorna uma variável com um objeto do SiteCollection na URL do site.
Get-Member
A partir daqui podemos utilizar algumas cmdlet importantes, como Get-Member ou Get-Help para descobrir o próximo passo lógico.
O Get-Member obtém todos os métodos e propriedades do objeto recém-adquirido:
$site | Get-Member
Aqui a saída será uma lista de métodos e propriedades que podem ser acessados utilizando a notação de ponto, como $ site.webs para exibir uma lista de sub-sites no site Collection.
Missão Cumprida! Acabamos de aprender um pouco mais sobre o PowerShell.
Keep Programming!!!!