ラベル SharePoint の投稿を表示しています。 すべての投稿を表示
ラベル SharePoint の投稿を表示しています。 すべての投稿を表示

2013年7月4日木曜日

◆Invoke-WebRequestサンプル

以前もちょっと取り上げたV3で追加になったコマンド。

実際に使う機会があったのでサンプルとして記載しておく。

かつてノーツで作られていた議事録をSharePointに移行したリストがあったのだが、移行ツールに不具合があるのか稀に添付文書のリンク切れが発生している。
そこで、リンク切れをチェックしてリストアップするスクリプトを書いた。

リスト形式(一覧)では添付の有無しか判らず、そのパスは明細を読む必要がある。
そこで、リストを一旦CSVに落として添付があるものについて「Invoke-WebRequest」で読み込んでみる。
そこから「href」に「Attachment」(すなわち添付)の文字があるものを抽出して存在チェックする。
とりあえず存在チェック自体も「Invoke-WebRequest」で読んでみてエラーになるかどうかで判断している。(これについては他にもっと良い方法が有るのかも・・・)

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015

$url = "http://server/sites/hoge/MEETING/Lists/List/DispForm.aspx?ID={0}"
$csv = Import-Csv "F:\Desktop\打ち合わせ報告書.csv" -Encoding default
$csv | %
{
 
if($_.添付 -eq 1
){
   
$_.整理番号 | Tee-Object -Variable number
    $urlString = $url -f $_.
ID
   
$web = Invoke-WebRequest -uri $urlString -UseDefaultCredentials
 
   
$web.links | ?{$_.href -like "*attachment*"} | %
{
     
$_.href |  %
{
       
Invoke-WebRequest -uri $_ -UseDefaultCredentials | Out-Null
        if($? -eq $false){$number >> "F:\Desktop\整理番号.txt"}
      }
    }
  }
}
<!-

2013年5月1日水曜日

◆SharePoint2010にPowerShell3.0を入れてはいけない

SharePoint2010の入ったサーバーにPowerShell3.0を入れた。

するとこれまで動いていたスクリプトが動かなくなってしまった。
「SharePoint は、バージョン 4.0.30319.296 の Microsoft .Net Runtime ではサポートされません」
image

まさか下位互換が無いなんてことは無いよねっと思い調べていると、そのまさかである。

Windows Server 2012 では SharePoint Server 2010 がサポートされない
image

つくづくSharePointという製品はいけてない。
3つも4つも前のバージョンならいざしらず、一つ前のバージョンが入らないって。

しかも、今回はWindowsServer2012に入れたわけでは無く、2008R2にSharePoint3.0を入れただけ。

ダメならダメでSharePointのインストーラでチェックしなきゃ。

SharePoint、信じがたい程使いづらいGUI、超低品質、バージョン間の互換性は皆無。

何十年もの間、いろんな製品を見たが、これは酷すぎ。(SharePontとコラボしているProjectServerも酷いが)

SharePoint2013などは互換性が無いわけだから名前を変えるべきでは無いのかなぁ・・・。

2013年4月9日火曜日

◆SharePointのサイトテーマを設定する

ここのところSharePoint2013をセットアップしていたのだが、結局その使用を断念することになった。

SharePoint2013ではデフォルトの認証方式が「クレームベース」に変更されている。(クレームベース自体はこれまでもあったのだが、デフォルトでは無かったのであまり使われていなかったのではなかろうか)

で、「クレームベース」とやら、具体的に何が違うのかは良く判らないのだが、とにかく色々と非互換がありそう。

さしあたって「InfoPath」がさっぱり動かない。
軒並みコーディング変更まで必要になりそうな気配。

ならばと、「クレームベース」を止めてこれまでのデフォルト(Classicだったかな)に戻すと、「WebApps」が動かなくなると脅される。

ん~、相変わらずSharePointはカオスだ。

結局ざっと眺めた感じでは2013に魅力的な機能は見当たらないので(イントラネット向けではないのかも)、苦労して2013にするメリットは無いと判断した。

そもそも「InfoPath」自体、印刷がさっぱりであまり使い物にならないので、いずれ撤退して、SharePoint2020あたりでの移行を目指すか(笑)

 

愚痴はさておき、SharePointサイトのテーマを設定する。

GUIでは「サイトの操作」「サイトの設定」「外観」「サイトのテーマ」から設定することができる。
image

これを見ると、親サイトのテーマを変えるとサブサイトのテーマも一気に変更してくれる。

っと思うのが普通だが、サブサイトのテーマは一向に変わってくれない。
サブサイト側の設定は確かに継承設定に変更されるのだが、
image

テーマ自体が反映されない。

なんともはや・・・。

仕方がないので、スクリプトで一律変更することにした。

あまり自信はないがこんな感じだろうか。

001
002
003
004
005
006
007
008
009
010
011
012
013

Add-PSSnapin Microsoft.SharePoint.PowerShell
$root = "http://svname/sites/root1"
$themeFile = "_catalogs/theme/Vantage.thmx"

#テーマ更新
$rootSite = Get-SPSite 
$root
$web
 = Get-SPWeb "$root/sub1"
$theme =
 
 
[Microsoft.SharePoint.Utilities.ThmxTheme]::Open($rootSite,$themeFile)
$theme.ApplyTo($web,$false)
$web.Update()
$web.Dispose()
$rootSite.Dispose()

ここでは「Vantage」というテーマを指定している。
image

対応する名前は以下のスクリプトで取得可能。

>[Microsoft.SharePoint.Utilities.ThmxTheme]::GetManagedThemes($rootsite) | select name

image

 

あーっ!!判った。
image

これを設定するタイミングでテーマも変更してあげないといけないようだ。
なので今のテーマを一律子供に反映したいときは、一旦別のテーマにしてから戻してあげると良さそう。

SharePoint恐るべし。

2013年2月4日月曜日

◆SharePoint InfoPathフォーム テンプレートをアクティブ化する

PowerShell: ◆SharePoint InfoPathフォーム(xsn)をアップロードするでアップロードしたテンプレートは、そのままではまだ使えない。

テンプレートを使いたいサイトコレクションごとに「アクティブ化」という作業が必要になる。

GUIでの作業は、サーバー側の管理サイト「サーバー全体の管理」から行う方法と、サイトコレクションの「サイトの設定」から行う方法の2通りがある。

<サーバー全体の管理>

  • 「サーバー全体の管理」「アプリケーション全般設定」「フォームテンプレートの管理」をクリック
  • 「フォームテンプレートの管理」画面でテンプレートが一覧表示されるので対象のテンプレートのドロップダウンを表示させて「サイトコレクションへのアクティブ化」をクリック
    image
  • 「フォームテンプレートのアクティブ化」画面が表示されるので、アクティブ化したいサイトコレクションを選択し「OK」をクリック
    image

<サイトコレクション・サイト設定>

  • サイトコレクションのトップサイトを開く
  • 設定ボタンをクリックし、表示されたメニューから「サイトの設定」をクリック
    image
  • 表示された「サイトの設定」画面から「サイトコレクションの管理」「サイトコレクションの機能」をクリック
    image
  • 表示された「サイトコレクションの機能」画面でアップロードしたテンプレートを探し「アクティブ化」ボタンをクリックする
    image

<PowerShellでの設定>

PowerShellからは「Enable-SPInfoPathFormTemplate」コマンドレットを使えば一発で設定が可能だ。

>Enable-SPInfoPathFormTemplate -Identity xsnファイル名 -Site サイト

前回のテンプレートアップロード時に一緒にやってしまえば良いだろう。

このコマンドは既に「アクティブ」な機能に対して行うとエラーが返ってくるので(無視しても良いが)一応確認してから登録することにした。

アクティブな機能を取ってくるのはとりあえず以下のような感じ。(ベストかとどうかは判らない)

>(Get-SPSite "http://sv/sites/hoge").Features | % properties | ? name -eq "OriginalFileName" | % value

登録するInfoPathファイルがここで返ってくるコレクションに含まれるかチェックすればよい。

前回のアップロードに今回の「アクティブ化」を追加したのが以下のソース。

001
002
003
004
005
006
007
008
009
010
011
012
013
014

#サイトコレクション取得
$Root = "http://sv01/sites/hoge"
$siteCol = Get-SPSite $Root
#InfoPathフォームアップロード&アクティブ化
$xsnDocs = $siteCol.Features |
 
 
% properties | ? name -eq "OriginalFileName" | % value
$oldSitePath =
 
 
"\\spsv2010\DavWWWRoot\sites\site1\FormServerTemplates"  #旧サイト
dir $oldSitePath | %
{
   
Install-SPInfoPathFormTemplate -Path $_.
FullName
   
if($xsnDocs -notcontains $_.
Name){
       
Enable-SPInfoPathFormTemplate -Identity $_.Name -Site $Root
    }
}

2013年2月1日金曜日

◆SharePoint InfoPathフォーム(xsn)をアップロードする

2010のSharePointでInfoPathを使ったライブラリがいくつかあるので2013に持ってきて使えるようにしたい。

まずはTemplateを登録する。

GUIでやるには、

  • 「サーバー全体の管理」「アプリケーションの全般設定」「フォームテンプレートの管理」をクリック
    image
  • 表示された「フォームテンプレートの管理」画面で「フォームテンプレートのアップロード」をクリック
    image
  • 「フォームテンプレートのアップロード」画面が表示されるので「参照」ボタンをクリックして該当の「xsn」ファイルを指定してアップロードする

これをPowerShellでやるには「Install-SPInfoPathFormTemplate」コマンドレットを使えば良い。
アップロードしたい「xsn」ファイルを引数に指定するだけで簡単にアップロードできる。

旧2010SharePointシステムからWebDav経由でテンプレートを取ってきてインストールするにはこんな感じになる。

001
002
003
004

$oldSitePath = 
 
"\\spsv2010\DavWWWRoot\sites\site1\FormServerTemplates"  #旧サイト
dir $oldSitePath |
 
 
%{Install-SPInfoPathFormTemplate -Path $_.FullName}

2013年1月31日木曜日

◆SharePoint サイトにライブラリを追加する

PowerShell: ◆SharePoint サイトコレクションにサイトを追加する

上記でサイトの追加まで出来たので、今度はそのサイトにライブラリを追加する。
ここでは、「データ接続ライブラリ」を追加してみた。

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016

#ライブラリ追加
$DLIB = "D接続LIB"
$web = Get-SPWeb "http://server/sites/web1"
if($web.Lists.title -notcontains $DLIB
){
 
$listid =
 
  
$web.Lists.Add($DLIB,"汎用データ接続ライブラリ","DataConnectionLibrary"
)
 
$url =
 
  
$web.Lists | ? id -eq $listid | % defaultviewurl
 $pubWeb =
 
  
[Microsoft.SharePoint.Publishing.PublishingWeb]::GetPublishingWeb($web
)
 
$nvnode =
 
  
New-Object Microsoft.SharePoint.Navigation.SPNavigationNode($DLIB,$url
)
 
$prvnode =
 
  
$pubweb.Navigation.CurrentNavigationNodes | ? title -eq "ドキュメント"
 $pubweb.Navigation.CurrentNavigationNodes.Add($nvnode,$prvnode)
}

基本的には、3行目でWebサイトを取得して、その「Lists」コレクションに「Add」してあげれば良い。

Add(ライブラリ名称,説明,ライブラリの種類)
としてあげれば良いのだが、このライブラリの種類(テンプレート)をどう指定すればよいのかちょっと考えてしまう。

きっと英語ならそのままなのだろうが・・・。

サイトテンプレートは「Get-SPWebTemplate」が用意されていたが、ライブラリの場合はWebサイトのインスタンスから直接取得できるようだ。

ただし、「Add」メソッドに指定するのは日本語ではないので、果たしてどのプロパティか?となるのだが、眺めてみても今一つしっくりこない。

とりあえず「Type」が使えた(どのライブラリでも使えるのかは?)。

image

ライブラリの追加自体はこれでOKとなったのだが、通常ライブラリはサイドリンクバーに表示する。

これをGUIでやるには「サイトの設定」メニューで「ナビゲーション」を選び、
image

「構造ナビゲーション」で「現在のナビゲーション」に追加してあげれば良い。
image

これを「PowerShell」でやるために、9,10行目で現在のWebサイトの「PublishengWeb」を取得。(それって何?って話もあるが、とりあえずGUIメニューで選んだ「ナビゲーション」そのものと思っておく)

あとは15行目で、「PublishengWeb」の「Navigation」ノードに追加してあげれば良い。

追加するにはライブラリを「SPNavigationNode」オブジェクトにしないといけないのだが、これは「名前」と「url」から直接コンストラクトできる。

15行目の「CurrentNavigationNodes」が返してくる「SPNavigationNodeCollection」には「Add」メソッド以外にも「AddAsFirst」と「AddAsLast」メソッドがあり、後ろに追加していくだけなら「AddAsLast」を使った方が簡単だが、2013ではトップサイトのナビゲーションに自動で「最近使った項目」なるものが表示される。(非表示にもできるが)
image

できればそいつの前に追加したかったので、「ドキュメント」ライブラリを見つけて、その後ろに追加する事とした。

また、7,8行目では追加したライブラリのURLを取得している。
通常であれば第1引数で指定したタイトルがそのまま使われるのだが、タイトルに日本語を含む場合はその部分が削除されるようだ。
例えば、「D接続LIB」であればURLには「DLIB」が使われる。
これで決め打ちしても良いのだが、一応追加されたIDで取得しなおしてURLを拾っている。
ADDメソッドにはURLを指定するオーバーロードもあるのだがSharePoint的に今一つ使い方が判っていないので・・・。

2013年1月25日金曜日

◆SharePoint サイトコレクションにサイトを追加する

「New-SPWeb」コマンドレットで簡単に追加できる。

パラメータは

  • URL:親のURLに続けて適当なIDを付ける。http://親/子
  • Template:「Get-SPWebTemplate」で一覧が表示されるので適切なものを選んで「Name」を指定する。(チームサイトあたりが無難か)
    image
  • Name:サイト名を指定
  • UseParentTopNav:親のトップリンクバーと同じトップリンクバーを表示するかを指定するスイッチ。一般的にはトップリンクバーは固定の方が判りやすいので指定したほうが良いような。
  • AddToTopNav:トップリンクバーに表示するかを指定するスイッチ。子ども側で指定するよりも親側で「サブサイトの表示」PowerShell: ◆SharePoint トップリンクバーへのオンマウスでサブサイトを表示するを指定したほうが良い気がする。(両方で指定するとリンクが重複表示されるのでどちらかに決める)
001
002
003
004
005

#サイトを作成する
$site = "http://server/sites/hoge"
if(!(Get-SPWeb $site -ea 0
)){
   
New-SPWeb $site -Template "STS#0" -name "Myサイト" -UseParentTopNav 
}
<!--EndFragment--

サイトの存在確認は、サイトコレクションからサブサイトの一覧を取ってきて確認することもできる。

◆SharePoint トップリンクバーへのオンマウスでサブサイトを表示する

トップリンクバーにサイトを並べて、オンマウスでそのサブサイトを展開するというのは良くあるパターン。

これには以下の設定をしておけばよい。

  • ルートサイトで、「サイト設定」「外観」「ナビゲーション」を選ぶ
    image
  • 「グローバルナビゲーション」で「構造ナビゲーション:現在のサイトのナビゲーションアイテムを表示する」を選び、「サブサイトを表示する」をチェックする
    image

これをPowreShellからやるとこんな感じになりそう。<!

001
002
003
004
005
006
007

#サブサイトをメニューに表示する
$web = Get-SPWeb $site.Url
$pubWeb =
 
 
[Microsoft.SharePoint.Publishing.PublishingWeb]::GetPublishingWeb($web)
$pubWeb.Navigation.GlobalIncludeSubSites = 
$true
$pubWeb
.Update()
$web.Dispose()
<!--EndFr--EndFr

コマンドレットだけで完結していないあたりが今一つだが、今のところ他の方法は見つからなかった。

◆SharePoint サイトコレクションの機能が有効か確認する

PowerShell: ◆SharePoint 発行インフラストラクチャ機能をアクティブ化するでアクティブ化する方法は判ったのだが、このコマンドは既にアクティブ化されている機能に実施すると例外が発生する。

サイトを構成する時に、全スクリプトが一発でうまくいくような気もしないので、ある程度リランも出来るようにしたい。

なので、非アクティブの時だけアクティブにするという条件を付ける。

単純に「Test-SPFeature」みたいなコマンドは用意されていないので、当該サイトのアクティブ機能をリストアップして確認することにした。

001
002
003
004
005

#発行インフラストラクチャ機能をアクティブ化する
$site = "http://server/sites/hoge"
if((Get-SPFeature -Site $site).displayname -notcontains "publishingsite"
){
   
Enable-SPFeature -Identity publishingsite -Url $site
}
</

2013年1月24日木曜日

◆SharePoint 発行インフラストラクチャ機能をアクティブ化する

また、大嫌いなSharePointをやっている。(笑)

使う側からするとSharePointは悪くないと思うのだが、提供する側からすると悪夢である。

なにせ設定の仕方が良く判らない。

そもそもメニューが見つけられない。

ただでさえ見つけられないのに、時と場合によっては消えたりする。
GUIで一旦設定するとコマンドからじゃないと戻せなくなるカオスなやつまで存在する。

今回は消えるパターンの1つである「発行インフラストラクチャ機能」をアクティブ化する。
これ自体はサイトに機能を追加してくれるものなのだが、それによってメニューまで変更してしまう。

追加ではなく置き換えをしてくれるので、「あのメニューはどこへ?」と探し回っても一生見つからない憂き目にあう。

SharePointもバージョンを重ねて今回2013になった。

これまでの反省を踏まえて、基本的な初期設定はコマンドで用意しておこうと思う。

そうすれば、今後メニューを探し回る必要が無くなる。(かもしれない)

 

GUIでは「サイト設定」「サイトコレクションの管理」「サイトコレクションの機能」を開いて以下を「アクティブ化」する。
image

これをPowerShellから行う。

ちなみに、SharePoint2013をインストールすると、PowerShellも3.0を入れてくれるようだ。
嬉しいことに、SharePoint用のコマンドレットヘルプは日本語化済みである。

サイトコレクションの機能をアクティブ化という事なので、「機能」すなわち「feature」であたりを付けるとコマンドレットはすぐに見つかった。

>Get-SPfeature –site http://SVname/sites/XX

で機能の一覧が表示される。
image

あとはこの名前で

>Enable-SPfeature –id DisplayName –site http://SVname/sites/XX

としてあげれば良いだけ。

なのだが、この「DisplayName」が判らない・・・。

はたして、「SharePoint Server 発行インフラストラクチャ」という機能はなんという「DisplayName」なのか。

英語のサイトを探すと機能名はすぐに判った(そのままなので)
image

で、こいつの「DisplayName」はちょっと苦労したが、以下で見つかった。
TechNet Wiki

image

2012年8月1日水曜日

◆SharePoint ドキュメントの属性を一覧表示する

共有ドキュメントとかに置いてある全てのドキュメントの属性を表示するサンプル。

もう少しダイレクトに情報が取れそうな気もするが、ざっと見ただけでは見つからなかった。

力技的な感じもするがとりあえず以下のスクリプトで取得可能。

2012年7月19日木曜日

◆SharePoint グループ毎に各サイトの権限を表示する

SharePointのサイトで表題のようなニーズがあったのでリンクしておく。

とりあえず、機能要件は満たしているように思う。

2011年9月9日金曜日

◆PowershellでSharePointサイトのクロール処理を実行する

SharePointのプロキシー設定がメタメタで、色々と調査するのに何度も手動クロールする必要があったため、Powershellスクリプトを作ってみた。
特に、IEのプロキシー設定を変える必要があり、SharePointの管理サイトにつながらない環境でテストするには必須になる。

001
002
003
004
005
006
007
008
009
010
011
012

$sApp = Get-SPEnterpriseSearchServiceApplication "Search Service Application"
$cSource = Get-SPEnterpriseSearchCrawlContentSource
 `
 
-Identity "ローカルの SharePoint サイト" -SearchApplication 
$sApp
$cSource
.StartFullCrawl()
cls
Write-Host
 "■クロールスタート"
Do
{
 
Start-Sleep 3
  Write-Host "*" -NoNewline
}
until($cSource.CrawlStatus -eq "Idle")
$cSource | fl *
<!--E

まずは1行目でサーチサービスアプリケーションのインスタンスを取得。
そのインスタンスを使って2行目でコンテンツソースを取得。
あとは取得したコンテンツソースのStartFullCrawlメソッドを呼んでやるだけ。
終了イベントはなさげだったのでループして監視。
結果はコンテンツソースオブジェクトから取得できる。

この例では一つのソースだけを使っているが、複数のソースを纏めてクロールするには、2行目でIdentityパラメータを省略するとソース全部が返ってくるので、それをループしてやれば良さそうだ。

2011年9月1日木曜日

◆SharePoint、サーバーファームをバックアップする

ファームのバックアップは、Backup-SPFarmコマンドレットを使う。

Backup-SPFarm -BackupMethod full `
  -Directory \\gsg-sv\ファームバックアップ -BackupThread 3 -ea Stop

BackupMethodでフルバックアップか差分バックアップかを指定。
Directoryがバックアップ先の場所。
BackupThreadはGUIで行うときのデフォルトが3だったので同じ値を指定。

バックアップのログを吐きつつエラーの時は管理者にメールするなんてのが普通のパターンだろうか。

& {
    trap{
    Send-MailMessage    -To "<spuser@hoge.co.jp>"                     `
                    -From "SharePoint <spadmin@hoge.co.jp>"            `
                    -Subject "SharePoint Farm Bkup Error"                     `
                    -SmtpServer "smtp.hoge.co.jp"                             `
                    -Body "SharePointファームバックアップエラー($(hostname))" `
                    -Encoding  ([System.Text.Encoding]::Default)

    }
    Add-PSSnapin Microsoft.SharePoint.PowerShell -ea 0
    Write-Output "■ファームバックアップ開始:$(Get-Date)▼▼▼▼▼▼▼▼"
    Backup-SPFarm -BackupMethod full `
      -Directory \\gsg-sv\ファームバックアップ -BackupThread 3 -ea Stop
    Write-Output "■ファームバックアップ終了:$(Get-Date)▲▲▲▲▲▲▲▲"
} >> c:\log\ファームバックアップ.log 2>&1

2011年8月31日水曜日

◆SharePoint、サイトコレクションを作成する

New-SPSite http://localhost/Tests/Test1 `
  -Template "STS#1" –OwnerAlias Domain\admuser `
  -Name "テストサイト1" `
  -Description "機能検証用テストサイト1" `
  -ContentDatabase WSS_Content

サイトコレクションは、New-SPSiteコマンドレットで作ることが出来る。
Templateパラメータで適用するテンプレートを指定するが、使用可能なTemplateは、Get-SPWebTemplateで参照可能だ。
image

また、OwnerAliasパラメータでサイトコレクションの管理者を指定する。
コンテンツデータベースは自前で作成して使うこともできるが今回はデフォルトで作られたWSS_Contentを指定した。

◆SharePoint、サイトに含まれるリストの一覧を取得する

PowerShell: ◆SharePointサイトコレクション配下のサイトを取得するで取得したSPWebオブジェクトはListsプロパティを持っていて、そのサイトのリストを取得することが出来る。

また、SPWebオブジェクトは、Get-SPWebコマンドレットで直接取得することも出来るようだ。

(Get-SPWeb http://gsg-svv2/sub).lists |
    ft title,itemcount -auto

image

◆SharePointサイトコレクション配下のサイトを取得する

SPSiteオブジェクトはAllWebsプロパティに配下のサイトを保持しているようだ。

Get-SPSite http://gsg-svv2/ |
  select -ExpandProperty AllWebs |
  select url,title

image

◆SharePointサイトコレクション毎のストレージ使用量を調べる

Get-SPSiteコマンドレットで返ってくるSPSiteオブジェクトは、Usage.Strageプロパティにてそのストレージ使用量が判るようだ。

Get-SPSite | Format-Table Url,@{
  name="Size(MB)"
  expression={($_.Usage.Storage/1MB).ToString("0.00")}
  Alignment="right"
} -auto

image

2011年8月30日火曜日

◆Sharepoint を操作する環境を作る

Sharepointは管理するサイトが増えてくると、後から一律設定を変更したいなんてときに結構面倒だったりする。
2010からはPowershellが使えるようになったので、そんな時も簡単に変更が出来る。はず。

という事でPowershellからのSharepoint操作を少しずつ試してみたいと思う。

まずは環境設定。
Sharepointのサーバー管理はクライアントから管理用サイトに接続しても可能なのだが、全ての設定が出来るわけではない。
なので、Powershellでの操作もサーバー側で実行するのが基本になるのでは無いかと思う。
そこで、サーバー側にPowershellの環境を作る。
サーバーにはPowershell_ISEが標準インストールされないので、サーバーマネージャーを使って追加してあげる。
image

Powershellは32ビット版と64ビット版がインストールされるのだが、Sharepointの管理には64ビット版を使うらしい。
image

次に、SharepointがインストールされたサーバーにはSharepoint管理用のSnapinもインストールされているのでこれをロードしてあげる。
image
image

毎回打つのは面倒なのでプロファイルを新規に作り登録しておく。
image

追加されたSharepoint用のコマンドレットは名詞部分の先頭にSPがつくようなので
Get-Command  -Noun  sp*
とかやると沢山のコマンドが表示される。
ちなみに、Get-SPSite と打って、サイトコレクションの一覧が取得できれば環境はOK。