2015/08/20

Windows 10の不要なアプリをPowerShellで一括削除する

Windows 10の不要なストア アプリを一括削除する方法です。
以前投稿した記事「Windows 10 Build 10041 でストアアプリ「メール、カレンダー、People」が使えなくなった場合の対処法」がベースになっています。
削除方法は「ユーザー単位で削除」、又は「Windows イメージからアプリを削除」の2通りあります。

2015.08.21 加筆
削除対象にアプリを追加しました。

今回削除するアプリ

  • Xbox
  • マップ
  • Microsoft Solitaire Collection
  • 天気
  • マネー
  • ニュース
  • Get Started
  • スポーツ
  • 3D Builder
  • 新しいOffice を始めよう
  • モバイル コンパニオン
  • Skype を手に入れよう
  • People
  • OneNote
  • アラーム&クロック
  • キャンディ・クラッシュ
  • Twitter
一括削除のPowerShell スクリプトを実行すると下記のようになります。

ユーザー単位でアプリを削除

サインインしているユーザーに対してアプリを削除した場合はRemove-AppxPackage コマンドレットを使います。

削除対象をGet-AppxPackage コマンドレットで検索し、PackageName パラメーターの一部を変数$lに格納しています。

$l = @("Microsoft.XboxApp*";
"Microsoft.WindowsMaps*";
"Microsoft.MicrosoftSolitaireCollection*";
"Microsoft.BingWeather*";
"Microsoft.BingFinance*";
"Microsoft.BingNews*";
"Microsoft.Getstarted*";
"Microsoft.BingSports*";
"Microsoft.3DBuilder*";
"Microsoft.MicrosoftOfficeHub*";
"Microsoft.WindowsPhone*";
"Microsoft.SkypeApp*";"Microsoft.WindowsSoundRecorder*";
"Microsoft.People*";
"Microsoft.Office.OneNote*";
"Microsoft.WindowsAlarms*";
"king.com.CandyCrushSaga*";
"*Twitter*";
)

$l | foreach{
    Get-AppxPackage $_ | Remove-AppxPackage -ErrorAction SilentlyContinue
}

Windows イメージからアプリを削除

Remove-AppxPackageの場合、新しく追加するユーザーには適用されません。
この場合は、Remove-AppxProvisionedPackage コマンドレットを使います。

実際にやってみて分かった注意点が一つ。
Windows イメージからアプリを削除した後、元に戻せませんでした。
そのため、Remove-AppxProvisionedPackage コマンドレットを使う場合は要注意だと考えています。
なお、戻す方法が分かり次第、本記事に加筆します。

#プロビジョニング
$l = @("Microsoft.3DBuilder*";
"Microsoft.BingFinance*";
"Microsoft.BingNews*";
"Microsoft.BingSports*";
"Microsoft.BingWeather*";
"Microsoft.Getstarted*";
"Microsoft.MicrosoftSolitaireCollection*";
"Microsoft.MicrosoftOfficeHub*";
"Microsoft.Office.OneNote*";
"Microsoft.People*";
"Microsoft.SkypeApp*";
"Microsoft.WindowsAlarms*";
"Microsoft.WindowsMaps*";
"Microsoft.WindowsPhone*";
"Microsoft.WindowsSoundRecorder*";
"Microsoft.XboxApp*";
)

$l | foreach{
    Get-AppxProvisionedPackage -Online | ?{$_.PackageName -like $_} | Remove-AppxProvisionedPackage -Online
}

新しく作成したユーザーでサインインするとアプリがなくなっている事が分かりました。
余談:サイドローディング
業務アプリケーションを追加する場合はどうやるのか?
調べてみたところ、サイドローディングでデプロイするんですね。
試してみる: Windows ストア アプリのサイドローディング
スポンサーリンク

スポンサーリンク