【PowerShell 6.0】スクリプトの作り方【作成編】【Part.2】

今回は「【PowerShell 6.0】スクリプトの作り方【設定編】【Part.1】」に続き、簡単なコマンドを実行したり、簡単なスクリプトを作成してリモートで実行してみます。

 

以前の PowerShell 関連の記事は以下を参照してください。

 

【PowerShell 6】Windows 7、Windows 2016への PowerShell 6 インストール手順

 

【PowerShell 6.0】スクリプトの作り方【設定編】【Part.1】

 

【PowerShell 6.0】スクリプトの作り方【作成編】【Part.2】

 

【PowerShell 6.0】スクリプトの作り方【実行編】【Part.3】

 

 

 

 

検証環境

AWS の EC2 インスタンスを利用して検証します。

AWS 管理コンソールにログインし、「インスタンスの作成」ボタンをクリックして下図のように「コミュニティ AMI」を選択します。

検索欄に「Microsoft Windows Server 2016 Japanese」と入力して検索します。

検索結果より「Windows Server 2016 Japanese Full Base」を選択します。

【PowerShell】スクリプトの作り方

 

 

リモートコマンドの実行

システム管理者は Powershell のリモートコマンドの実行機能を使用して、リモートのサーバー上でコマンドレットを実行することができます。

PowerShell のコマンドレット実行結果は全て「オブジェクト」として出力されます。

 

オブジェクトとは?

PowerShell コマンドレットの実行結果は全て「オブジェクト」として出力されますが、「オブジェクト」とは一体何でしょうか?

オブジェクトとして出力されるため、PowerShell コマンドレット同士出力結果を連携することができます。

 

オブジェクトとは型の実体(インスタンス)です。

  • 整数型の実体 ← 1, 2, 3, 100 など
  • 文字列型の実体 ← ”Hello”、”テスト”、”House” など

 

1 や “Hello” は「オブジェクト」です。

逆に「整数型」「文字列型」「型(クラス)」です。

 

 

オブジェクトは「メソッド」や「プロパティ」を持つ

オブジェクトは「クラス」で定義された「メソッド」「プロパティ」を持ちます。

 

■メソッド

メソッドとはオブジェクト内部に定義済みの「関数」「プロシージャ」です。

メソッドはオブジェクトに対する指示(命令)です。

 

■メソッドの例

Get-Date コマンドレットにメソッドを追加する例です。

PS C:\Program Files\PowerShell\6.0.3> Get-Date ← Get-Dateコマンドレットのみ実行します。

 

2018年8月10日 16:03:36

 

 

PS C:\Program Files\PowerShell\6.0.3> (Get-Date).AddDays(10)  ← Get-Dateコマンドレットにメソッドを追加しています。
 
2018年8月20日 16:04:08 
 
 
PS C:\Program Files\PowerShell\6.0.3> (Get-Date).Month ← Get-Dateコマンドレットにメソッドを追加しています。

PS C:\Program Files\PowerShell\6.0.3>

 

 

 

■プロパティ

プロパティはは、オブジェクト内で保持しているデータ(特性)のためのフィールドです。

 

 

 

 

リモートコマンドの例

以下は、リモートにてプロセス一覧を取得するコマンドです。

「Invoke-Command」コマンドレットは、ローカルもしくはリモートコンピュータでコマンドを実行し、エラーも含めて結果を返します。

 

■Invoke-Command コマンドレット オプション

  • -ComputerName リモートコンピュータを指定します。
  • -ScriptBlock リモートコンピュータ上で実行するコマンドを入力します。

以下、Invoke-Command コマンドレットの実行例です。

PS C:\Users\xxxxxx> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -ScriptBlock {Get-Process} 
 
Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName                    PSComputerName 
——-  ——    —–      —– —–   ——     — ———–                    ————– 
    167       9    46032       9048 33898     3.69   1712 amazon-ssm-agent               ec2-xxxxxxxxxxxxxx.ap-north… 
    237      16     4348      20380 …63     0.11   3128 conhost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    253      11     1784       2008 …22     0.16    516 csrss                          ec2-xxxxxxxxxxxxxx.ap-north… 
    117       8     1676        944 …06     0.05    584 csrss                          ec2-xxxxxxxxxxxxxx.ap-north… 
    204      11     1772       6880 …28     0.19   1336 csrss                          ec2-xxxxxxxxxxxxxx.ap-north… 
    309      18    13288      17636 …69     0.09    928 dwm                            ec2-xxxxxxxxxxxxxx.ap-north… 
    342      28    16280      56144 …18     0.25   1100 dwm                            ec2-xxxxxxxxxxxxxx.ap-north… 
   1260      55    17520      68984 …41     1.47    468 explorer                       ec2-xxxxxxxxxxxxxx.ap-north… 
      0       0        0          4     0               0 Idle                           ec2-xxxxxxxxxxxxxx.ap-north… 
    284      18     4324      17148 …36     0.02   3384 ImeBroker                      ec2-xxxxxxxxxxxxxx.ap-north… 
     71       6      912        716    31     0.00   1720 LiteAgent                      ec2-xxxxxxxxxxxxxx.ap-north… 
    399      24     9152      25732 …78     0.17    920 LogonUI                        ec2-xxxxxxxxxxxxxx.ap-north… 
    999      22     5376      10040 …00    14.55    704 lsass                          ec2-xxxxxxxxxxxxxx.ap-north… 
    190      13     2744       3356 …00     0.03   3000 msdtc                          ec2-xxxxxxxxxxxxxx.ap-north… 
    537      72   137556      57552 …47 1,142.75   1812 MsMpEng                        ec2-xxxxxxxxxxxxxx.ap-north… 
    167       9     4968       3184 …24     0.05   2456 NisSrv                         ec2-xxxxxxxxxxxxxx.ap-north… 
    580      32    59576      72372 …01     0.47   3932 powershell                     ec2-xxxxxxxxxxxxxx.ap-north… 
    265      11     2116       9808 …49     0.02   2512 rdpclip                        ec2-xxxxxxxxxxxxxx.ap-north… 
    165      10     3700      12680 …54     0.05    832 RuntimeBroker                  ec2-xxxxxxxxxxxxxx.ap-north… 
    605      32    12712      42040 …48     0.25   3288 SearchUI                       ec2-xxxxxxxxxxxxxx.ap-north… 
    239       9     2764       4588 …71     0.30    696 services                       ec2-xxxxxxxxxxxxxx.ap-north… 
    713      32    22452      42660 …56     0.38   3184 ShellExperienceHost            ec2-xxxxxxxxxxxxxx.ap-north… 
    369      15     3760      19552 …54     0.14   2700 sihost                         ec2-xxxxxxxxxxxxxx.ap-north… 
     54       2      384        560 …58     0.05    384 smss                           ec2-xxxxxxxxxxxxxx.ap-north… 
    477      24     6060       9388 …59     0.16   1688 spoolsv                        ec2-xxxxxxxxxxxxxx.ap-north… 
    755      27    65692      64088 …65     0.92    104 svchost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    546      30    10688      14392 …84     1.61    476 svchost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    474      18    10180      14768 …23     0.67    520 svchost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    442      34    10544       8900 …39     0.31    536 svchost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    676      21     6000      15840 …28     0.44    776 svchost                        ec2-xxxxxxxxxxxxxx.ap-north… 
    557      15     3456       6308 …90     0.58    824 svchost                        ec2-xxxxxxxxxxxxxx.ap-north…

 

 

Invoke-Command コマンドレットの実行権限

デフォルトでは「Invoke-Command」コマンドレットは、ローカルコンピュータのユーザーの権限で実行されます。

【例】

ローカルコンピュータのユーザー「WINTEST-0001」で実行した場合

リモートコンピュータのユーザー「WINTEST-0001」の権限で実行される。

 

リモートコンピュータで他のユーザーで実行したい場合は、「-Credential」オプションを利用します。

「-Credential」オプションの後ろに、ユーザー名を指定します。

 

以下、リモートで「Administrator」アカウントとして実行する例です。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-Process} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
 NPM(K)    PM(M)      WS(M)     CPU(s)      Id  SI ProcessName                        PSComputerName 
 ——    —–      —–     ——      —  — ———–                        ————– 
      9    43.01       8.28       1.80    1752   0 amazon-ssm-agent                   ec2-xxxxxxxxxxxxxx.ap-northeas… 
     11     1.82       2.10       0.16     512   0 csrss                              ec2-xxxxxxxxxxxxxx.ap-northeas… 
      8     1.30       0.45       0.08     580   1 csrss                              ec2-xxxxxxxxxxxxxx.ap-northeas… 
     12     1.97       6.62       0.39    2860   2 csrss                              ec2-xxxxxxxxxxxxxx.ap-northeas… 
     18    12.95       7.88       0.11     924   1 dwm                                ec2-xxxxxxxxxxxxxx.ap-northeas… 
     29    16.30      53.21       0.66    2592   2 dwm                                ec2-xxxxxxxxxxxxxx.ap-northeas… 
     73    24.96      73.92       2.38    2964   2 explorer                           ec2-xxxxxxxxxxxxxx.ap-northeas… 
      0     0.00       0.00       0.00       0   0 Idle                               ec2-xxxxxxxxxxxxxx.ap-northeas… 
     12     2.53       5.48       0.03    3440   2 ImeBroker                          ec2-xxxxxxxxxxxxxx.ap-northeas… 
      6     0.89       0.38       0.00    1760   0 LiteAgent                          ec2-xxxxxxxxxxxxxx.ap-northeas… 
     24     8.95      41.66       0.20     916   1 LogonUI                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     22     5.30       9.11       0.89     700   0 lsass                              ec2-xxxxxxxxxxxxxx.ap-northeas… 
     59    47.77      31.72       1.42    4476   2 mmc                                ec2-xxxxxxxxxxxxxx.ap-northeas… 
     13     2.93      11.24       0.02    3328   0 MpCmdRun                           ec2-xxxxxxxxxxxxxx.ap-northeas… 
     13     2.63       9.66       0.03    2588   0 msdtc                              ec2-xxxxxxxxxxxxxx.ap-northeas… 
     72   120.91      97.18      45.92    1856   0 MsMpEng                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
      9     4.86       2.99       0.03    2468   0 NisSrv                             ec2-xxxxxxxxxxxxxx.ap-northeas… 
     11     2.07       3.46       0.13    2676   2 rdpclip                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
      9     2.14       6.39       0.09    2768   2 RuntimeBroker                      ec2-xxxxxxxxxxxxxx.ap-northeas… 
     32    12.54      31.39       0.48    3388   2 SearchUI                           ec2-xxxxxxxxxxxxxx.ap-northeas… 
     50   106.72     137.65       3.41    1140   2 ServerManager                      ec2-xxxxxxxxxxxxxx.ap-northeas… 
      9     2.62       4.14       0.52     692   0 services                           ec2-xxxxxxxxxxxxxx.ap-northeas… 
     31    21.16      31.99       0.67    3304   2 ShellExperienceHost                ec2-xxxxxxxxxxxxxx.ap-northeas… 
     15     3.75      10.39       0.16    2624   2 sihost                             ec2-xxxxxxxxxxxxxx.ap-northeas… 
      2     0.38       0.20       0.06     380   0 smss                               ec2-xxxxxxxxxxxxxx.ap-northeas… 
     25     6.27       4.21       0.16    1728   0 spoolsv                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     35    10.77      10.38       0.45     472   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     20    15.87      15.01       1.53     480   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     33    10.98      15.26       2.52     508   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     22     6.13      10.40       0.48     772   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     15     3.48       6.01       0.50     812   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     26    67.27      52.39       1.03    1020   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     51    22.50      34.36       2.70    1116   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     35     8.86      19.86       0.27    1132   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     46     7.99      13.29       0.31    1260   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
      9     1.58       1.17       0.05    1272   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     12     1.39       2.88       0.03    1608   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     11     2.02       2.82       0.02    1820   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     17     4.57       9.93       0.25    1828   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     26     5.88      17.33       0.16    2164   2 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
     14     1.63       6.78       0.03    2748   0 svchost                            ec2-xxxxxxxxxxxxxx.ap-northeas… 
      0     0.13       0.14      10.69       4   0 System                             ec2-xxxxxxxxxxxxxx.ap-northeas… 
     23     4.36       9.54       0.16    2788   2 taskhostw                          ec2-xxxxxxxxxxxxxx.ap-northeas… 
      8     1.04       0.86       0.09     596   0 wininit                            ec2-xxxxxxxxxxxxxx.ap-northeas…

 

 

 

 

複雑なリモートコマンドレットを実行して詳細な構成情報を取得する

コマンドレットにクラスを指定することで更にピンポイントの情報を取得するコマンドを実行することが出来るようになります。

システムの運用エンジニアとして日々数百レベルのサーバーを運用管理をしていると、修正パッチや静寂性対応などで、「システム構成情報」「OSバージョン情報」「ミドルウェアのバージョン情報」など収集する必要が出てきます。

また障害対応などで全体の構成情報を取得する必要が出てくることもあります。

そんな時に素早く正確な情報を取得するためには「コマンド」「スクリプト」が必要になります。

 

Get-WmiObject【WMIオブジェクトの取得】

Get-WmiObject は、WMI(Windows Management Instrumentation)を利用して対象コンピュータのデータを取得します。

Get-WmiObject は、リモートコンピュータに対しても実行できます。

 

「-ScriptBlock {Get-WmiObject}」を実行すると以下のように「Class(クラス)」を指定するプロンプトが表示されます。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-WmiObject} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
コマンド パイプライン位置 1 のコマンドレット Get-WmiObject 
次のパラメーターに値を指定してください: 
Class: Win32_ComputerSystem 
 
 
Domain              : WORKGROUP 
Manufacturer        : Xen 
Model               : HVM domU 
Name                : EC2AMAZ-LVFK2GA 
PrimaryOwnerName    : EC2 
TotalPhysicalMemory : 1073332224 
PSComputerName      : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
 
 
PS C:\Program Files\PowerShell\6.0.3>

 

 

 

コマンドレットで指定するクラス

例えば「Get-WmiObject」など特定のコマンドレットはクラスを指定して、より詳細な情報を取得することができます。

以下、各クラスの例です。

Win32_ComputerSystem クラス

Win32_ComputerSystem クラスは Win32 環境下のコンピュータに関する詳細情報を表示します。

Win32_ComputerSystem」クラスはありますが「Win64_ComputerSystem」クラスはありません。

 

【例】

リモートコンピュータの「コンピュータに関する詳細情報を取得する」コマンドです。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-WmiObject -Class Win32_ComputerSystem} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
 
Domain              : WORKGROUP 
Manufacturer        : Xen 
Model               : HVM domU 
Name                : EC2AMAZ-LVFK2GA 
PrimaryOwnerName    : EC2 
TotalPhysicalMemory : 1073332224 
PSComputerName      : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
 
 
PS C:\Program Files\PowerShell\6.0.3>

 

 

Win32_OperatingSystem クラス

Win32_OperatingSystem クラスは Windows OS(オペレーティングシステム)の情報を表示します。

 

【例】

リモートコンピュータの OS に関する情報を取得するコマンドです。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-WmiObject -Class Win32_OperatingSystem} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
 
SystemDirectory : C:\Windows\system32 
Organization    : Amazon.com 
BuildNumber     : 14393 
RegisteredUser  : EC2 
SerialNumber    : 00376-40000-00000-AA091 
Version         : 10.0.14393 
PSComputerName  : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
 
 
PS C:\Program Files\PowerShell\6.0.3>

 

 

Win32_UserAccount クラス

Win32_UserAccount は、リモートコンピュータの「ユーザーアカウント」もしくは「ドメインアカウント」情報を取得するコマンドです。

 

【例】

リモートコンピュータに存在するユーザーアカウント情報を取得します。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-WmiObject -Class Win32_UserAccount} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
 
AccountType    : 512 
Caption        : EC2AMAZ-LVFK2GA\Administrator 
Domain         : EC2AMAZ-LVFK2GA 
SID            : S-1-5-21-778884967-1081480254-3765237450-500 
FullName       : 
Name           : Administrator 
PSComputerName : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
AccountType    : 512 
Caption        : EC2AMAZ-LVFK2GA\DefaultAccount 
Domain         : EC2AMAZ-LVFK2GA 
SID            : S-1-5-21-778884967-1081480254-3765237450-503 
FullName       : 
Name           : DefaultAccount 
PSComputerName : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
AccountType    : 512 
Caption        : EC2AMAZ-LVFK2GA\Guest 
Domain         : EC2AMAZ-LVFK2GA 
SID            : S-1-5-21-778884967-1081480254-3765237450-501 
FullName       : 
Name           : Guest 
PSComputerName : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
AccountType    : 512 
Caption        : EC2AMAZ-LVFK2GA\xxxxxx 
Domain         : EC2AMAZ-LVFK2GA 
SID            : S-1-5-21-778884967-1081480254-3765237450-1001 
FullName       : xxxxxx 
Name           : xxxxxx 
PSComputerName : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
AccountType    : 512 
Caption        : EC2AMAZ-LVFK2GA\test 
Domain         : EC2AMAZ-LVFK2GA 
SID            : S-1-5-21-778884967-1081480254-3765237450-1002 
FullName       : test 
Name           : test 
PSComputerName : ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
 
 
PS C:\Program Files\PowerShell\6.0.3> 

 

 

Win32_Group クラス

Win32_Group は、リモートコンピュータの「グループアカウント」もしくは「ドメイングループアカウント」情報を取得するコマンドです。

 

【例】

リモートコンピュータに存在するグループアカウント情報を取得します。

PS C:\Program Files\PowerShell\6.0.3> Invoke-Command -ComputerName ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com -Credential Administrator -ScriptBlock {Get-WmiObject -Class Win32_Group} 
 
PowerShell credential request 
Enter your credentials. 
Password for user Administrator: ************ ← パスワードを入力します。 
 
 
Caption                                             Domain          Name                                SID          PSComputerName 
——-                                             ——          —-                                —          ————– 
EC2AMAZ-LVFK2GA\Access Control Assistance Operators EC2AMAZ-LVFK2GA Access Control Assistance Operators S-1-5-32-579 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Administrators                      EC2AMAZ-LVFK2GA Administrators                      S-1-5-32-544 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Backup Operators                    EC2AMAZ-LVFK2GA Backup Operators                    S-1-5-32-551 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Certificate Service DCOM Access     EC2AMAZ-LVFK2GA Certificate Service DCOM Access     S-1-5-32-574 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Cryptographic Operators             EC2AMAZ-LVFK2GA Cryptographic Operators             S-1-5-32-569 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Distributed COM Users               EC2AMAZ-LVFK2GA Distributed COM Users               S-1-5-32-562 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Event Log Readers                   EC2AMAZ-LVFK2GA Event Log Readers                   S-1-5-32-573 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Guests                              EC2AMAZ-LVFK2GA Guests                              S-1-5-32-546 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Hyper-V Administrators              EC2AMAZ-LVFK2GA Hyper-V Administrators              S-1-5-32-578 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\IIS_IUSRS                           EC2AMAZ-LVFK2GA IIS_IUSRS                           S-1-5-32-568 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Network Configuration Operators     EC2AMAZ-LVFK2GA Network Configuration Operators     S-1-5-32-556 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Performance Log Users               EC2AMAZ-LVFK2GA Performance Log Users               S-1-5-32-559 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Performance Monitor Users           EC2AMAZ-LVFK2GA Performance Monitor Users           S-1-5-32-558 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Power Users                         EC2AMAZ-LVFK2GA Power Users                         S-1-5-32-547 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Print Operators                     EC2AMAZ-LVFK2GA Print Operators                     S-1-5-32-550 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\RDS Endpoint Servers                EC2AMAZ-LVFK2GA RDS Endpoint Servers                S-1-5-32-576 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\RDS Management Servers              EC2AMAZ-LVFK2GA RDS Management Servers              S-1-5-32-577 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\RDS Remote Access Servers           EC2AMAZ-LVFK2GA RDS Remote Access Servers           S-1-5-32-575 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Remote Desktop Users                EC2AMAZ-LVFK2GA Remote Desktop Users                S-1-5-32-555 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Remote Management Users             EC2AMAZ-LVFK2GA Remote Management Users             S-1-5-32-580 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Replicator                          EC2AMAZ-LVFK2GA Replicator                          S-1-5-32-552 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Storage Replica Administrators      EC2AMAZ-LVFK2GA Storage Replica Administrators      S-1-5-32-582 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\System Managed Accounts Group       EC2AMAZ-LVFK2GA System Managed Accounts Group       S-1-5-32-581 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
EC2AMAZ-LVFK2GA\Users                               EC2AMAZ-LVFK2GA Users                               S-1-5-32-545 ec2-xxxxxxxxxxxxxx.ap-northeast-1.compute.amazonaws.com 
 
 
PS C:\Program Files\PowerShell\6.0.3>

 

 

 

 

 

参考にした技術書

以下の各技術書は、現在インフラ構成管理で利用する PowerShell スクリプトを作成するために読んで勉強している書籍です。

 

この技術書を読んで、PowerShell が「Linux」で具体的にどのように利用できるかを知りました。

また、基本的な構文(if、switch、while、for、foreach 文など)を非常に細かく解説しています。インターネットで調べれば英語での情報が出てきますが、日本語でここまで細かく解説している技術書はなかなかないため重宝しています。

PowerShell実践ガイドブック ~クロスプラットフォーム対応の次世代シェルを徹底解説~

 

 

 

「PowerShell 実践システム管理ガイド」という題名の通り、具体的にどのように PowerShell で複数台のサーバーのシステム管理をするのか、具体的なコマンドを詳細に解説しています。

Windows PowerShell実践システム管理ガイド 第3版 (TechNet ITプロシリーズ)

 

 

 

PowerShell で CSV ファイルや Excel を処理するスクリプトが詳しく解説されているので勉強になります。

 

うごかして学ぶWindows PowerShell

 

 

 

過去の PowerShell の記事

以前の PowerShell 関連の記事は以下を参照してください。

 

【PowerShell 6】Windows 7、Windows 2016への PowerShell 6 インストール手順

 

【PowerShell 6.0】スクリプトの作り方【設定編】【Part.1】

 

【PowerShell 6.0】スクリプトの作り方【作成編】【Part.2】

 

【PowerShell 6.0】スクリプトの作り方【実行編】【Part.3】

 

 

 

 

 

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

AlphaOmega Captcha Medica  –  What Do You See?
     
 

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください