Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Never too late to start.(始めるのに遅すぎることはない。)
これはいつも自分に言い聞かせているところです。私は 41 才で本格的に PowerShell を始めました。
実際に始めてみれば、趣味レベルであればそれほど難しくない事に気づくと思います。(業務となればまた別ですが汗;)正直、私は今まで PowerShell を業務でほとんど使っていませんでしたが、勉強しながら知識の整理としてここで記事を書いているくらいです。
現在は、仕事で使うようになりましたので、自分のブログがたまに参考になったりします。
対象となる読者
基本的には、以下の方々を対象としています。
- PC サポートなど、ヘルプデスクの方
- 社内 SE の方
- Windows 管理者の方
- Windows 管理者を目指している方
- PowerShell に興味はあるが、今まで使った事がない、コマンドやスクリプト言語も使った事がない方
また、実際手を動かしながら進めてゆけるように書いていますので、ハンズオンしながら進めたい方にはお勧めかと思います。
入門 〜 基本レベルを中心にまとめてゆこうかと思います。(未だ私は PowerShell スキルもそのレベルですので)
また、クラウド基盤やミドルウェアで使う PowerShell もここで Tips としてまとめて、必要になったら見つけやすいようにしたいと思います。
まだまだ、記事のクオリティも量もまとめかたもまだまだではありますが、参考になれば幸いです。という事で早速ですが、未だ PowerShell について知らない方もいると思います。まずは何故 PowerShell が必要なのか?という切り口から書いてゆきます。
PowerShell の需要
PowerShell の需要は着々と増えているようです。Windows サーバー・ミドルウェアの運用などで求められると思われます。私は主に Active Directory の関係で PowerShell を使うようになりました。
Windows Server 2008 R2 や Windows 7 の時はデフォルトで PowerShell は使えませんでしたが、現在 Windows Server 2016 や Windows 10 ではデフォルトで PowerShell が使えます。
現在は、PowerShell は全ての製品に Build-in され、サポートされていますので、PowerShell を使えば全ての Microsoft のサーバー製品を管理する事ができます。
管理者の視点でいえば、もしあなたが PowerShell を使いこなせれば、最新のMicrosoft 製品を管理するスキルセットを持っているという事になります。
PowerShell の使われ方
基本的にはWindows サーバーの管理に使われます。(クライアント OS でも使います。)恐らく PowerShell が使えれば、全ての管理ができるのではないかと思いますが、何でも PowerShell を使うという訳ではないと思います。
例えば、私が Exchange Server 2007 を管理していた時に、最も使われていた共通する管理向け機能は GUI でデザインされていました。(だいぶ GUI が変わりましたよね)一方でよく使われていないような機能などは PowerShell を使わなければならなかったと記憶しています。(共通する機能も PowerShell で使えます。)
こういったように、Microsoft の PowerShell に対しての考え方は、「よく使う機能は GUI を提供します、そうではない機能は PowerShell を使ってください。」という事かと思います。(Azure もそういう使われ方になってきていると思います。)
PowerShell が使えると得られるメリット
ここで PowerShell が使えるようになるとどのようなメリットがあるのか、お伝えいたします。
- Windows の管理が楽になる。例えばこんなケースが考えられます。こういった依頼に対して GUI で処理するより、格段に時短にでき、且つ自動化でき、使い回しが可能になります。
- 「一時的に使うユーザーアカウントを 100 個作って欲しい」と頼まれた時。
- 「サーバーマシンのコンピューターオブジェクト一覧を CSV で出して欲しい」と頼まれた時。
- 「Azure の仮想マシンを夜中に自動で停止し、朝一に自動開始して欲しい」と頼まれた時。
- 大量の PC を運用している企業で、例えば 5000 台の PC の C ドライブの下にフォルダを作ってほしいと言われた時。
- PowerShell はコマンドでスクリプト言語ですが、プログラミングの基礎が理解できるようになると私は思います。使い方に慣れてくると、他のプログラミング言語を一から初めても、どのプログラミング言語でも最初に覚えなくてはならない入門的な知識を習得するのがスムーズになると思います。
- スクリプトを使える人が少ない企業ですと重宝されるようになるかと思います。
- MCP の Microsoft の資格試験は PowerShell の問題が入っているので資格試験対策にもなります。
このように、PowerShell を使えれば、一石二鳥 ( killing two birds with one stone ) 以上の効果が得られるはずです。
始める前に
くどいようですみませんが、Microsoft のスキルを身につけたいという事でしたら、PowerShell は身につけるとメリットが沢山付いてきますので是非とも学習される事をお勧めします。
「Windows の管理者が PowerShell を使う事は必須のスキルになってきている」と思います。
入門レベル
入門向けの記事になります。ここで PowerShell の基本的な使い方を理解すると良いでしょう。
下のリンクは全て別タブで開きます。(タイトルは一部若干ですが変更しているものもあります。)
- PowerShellの紹介と使い方について
- 基本的なコマンドレットの一覧について
- Get-HelpとGet-Commandの使い方
- 変数の基本的な使い方の説明
- データの種類について(整数型と文字列型)
- Pipeline(パイプライン)とは何か
- 実行ポリシーを変更する
- Read-Hostコマンドレットを使ってみる
- Write-Hostコマンドレットを使ってみる
- Write-Outputコマンドレットを使ってみる
- 色々な比較演算子を使ってみる
- 比較演算子を元に条件式(IF文)を使ってみる
- 配列(Array)についてまとめてみる
- 連想配列(hash_table)についてまとめてみる
- 繰り返し文(While, For)について
- 関数(function)を使ってみる
- エラーハンドリング(Try-Catch)を使ってみる
- オブジェクトを操作するコマンドを使う
基本操作
フォルダ・ファイル操作
フォルダや、ファイル(テキストや CSV ファイル等)の操作に関する記事になります。フォルダの場所を移動したり、ファイルのオブジェクトを追記したり、インポートしたりエクスポートしたりする事は業務で実際に使う処理になりますので、ここで纏めています。
下のリンクは全て別タブで開きます。(タイトルは一部若干ですが変更しているものもあります。)
画面処理
GUI に関する事に関する記事になります。画面上にウィンドウを表示したり、ダイアログを表示したりするような画面処理を PowerShell で作る方法をここで纏めています。
下のリンクは全て別タブで開きます。(タイトルは一部若干ですが変更しているものもあります。)
セキュリティ
TIPS
レベル別の記事ではなく、クラウド基盤やミドルウェアで PowerShell を使う記事などは Tips に分けてまとめております。
下のリンクは全て別タブで開きます。(タイトルは一部若干ですが変更しているものもあります。)
- Azure PowerShellをインストールする
- Azure PowerShellでAzureに接続する
- Azure PowerShellでリソースグループを作る
- Azure PowerShellでAzureVMをデプロイする
- Azure PowerShellでAzureVMのサイズを変更する
- Azure PowerShellでAzureVMのDiskを作る
- Azure PowerShellでAzureVMの電源ステータスの確認と電源オン・オフをする
- PowerShellでAzure ADに接続する
- PowerShellでAzure ADのユーザー追加をする
- PowerShellでADオブジェクト一覧を取得する
- PowerShellでユーザーのsamAccountNameを取得する
- PowerShellでユーザーのUPNを取得する
- OUにリンクされているGPOを調べる
- OUにリンクされていないGPOを調べる
- GPOからスクリプトパスを調査する
- 不要なアプリをアンインストールする方法
- GPOの信頼済みサイトにURLを追加する
おすすめの本はこちら ↓↓↓