[FAQ CENTER トップ]


Powershell スクリプトサンプル集 | コピペで即戦力




01基本
■ powershell における if 〜 else 構文
■ Powershell におけるループ処理の基本
■ 環境変数の追加する

02Powershell実行
■ コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません

03セキュリティ
■ 実行を許可するサンプルコード
■ AuthorizationManager チェックが失敗しました
■ 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell' へのアクセスが拒否されました
■ Windows Firewall の状態を確認する
■ ウィルス対策ソフトの状態を確認する powershell サンプルコード
■ ログイン失敗履歴をWindowsイベントログから取得する

04ファイル
■ ファイルの中身を出力するコマンド
■ 指定したフォルダ以下のすべてのファイルのサイズの合計を求める
■ n日前に編集されたファイルを再帰的に削除する
■ テキストファイルを1行ごと読み込むサンプル | Shift-JIS と UTF-8
■ 【diff】 テキストファイルの比較が正常に動作しない
■ robocopy 実行結果を lastexitcode で判定する
■ ファイルを読み取りロックする簡単なサンプルコード

06システム情報
■ バージョンを確認する方法
■ Windows Update 関連をチェックする
■ スクリプトエンジンのバージョンを調べる
■ $profile がPowershell で読み込まれない

08プロセス
■ プロセスごとのCPU使用率をソートして出力
■ 指定したプロセス名が実行中か確認する
■ Get-Processの戻り値をForEach-objectでループ処理する

09サービス
■ Windows サービスで動作中の一覧を取得し、動作中のサービス数をカウントするサンプル
■ sc でサービス制御を行うと位置指定パラメーターエラーが発生

10Excel
■ Excelで $book.SaveAsで確認なしに上書きする方法
■ Excel で新規に book を作成し値を編集するサンプルコード
■ Excel プロセスが残る場合の回避方法
■ InvalidOperation: (op_Addition:String) []、RuntimeException が Excel で発生
■ 自動で印刷するサンプルコード
■ Excelブックを開き、シートのセルに値を代入するサンプルコード
■ "基になる RCW から分割された COM オブジェクトを使うことはできません。"の対処方法
■ Excel のSaveAsメソッドで例外が発生して変換に失敗する場合の対処
■ CSV を Excel 形式や HTML 形式に変換する
■ Excelでセルの範囲を指定してcsvに書き込むサンプルコード
■ Powershell だけでテキストファイルをPDFに変換するコード

11Outlook
■ Outlookによりメールを作成し送信するサンプルコード

12制御構文
■ 用語 '=' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
■ 文字列が null であるか判定するスクリプト
■ [System.Management.Automation.Internal.Host.InternalHost] に 'Exit' という名前のメソッドが含まれないため、メソッドの呼び出しに失敗しました。

13Office製品
■ PowerShell で Google Chrome を起動するサンプルコード

14インターネット
■ HTTP (Web) ダウンロードを行う
■ インターネットから一括して複数ファイルをダウンロードするサンプル
■ 指定したWebページのリンク先の一覧を取得するサンプルコード
■ Webサイトを一括ダウンロードするサンプル
■ インターネットのダウンロード速度を測定するサンプルコード

15イベントログ
■ イベントログを出力する
■ Security ログに関する情報を取得できませんでした。エラー: 許可されていない操作を実行しようとしました。
■ "Get-Winevent : データが無効です。"の原因と対処
■ Powershellで警告やエラーの Windows イベントログを出力するサンプル

17デバッグ
■ PowerShell の実行結果をファイルに記録する

19配列
■ 配列を CSV ファイルに書き出す簡単なサンプルプログラム
■ プロセス間で共通の変数を使う方法
■ "null 配列にインデックスを付けることはできません" の原因と対処

20文字列操作
■ Powershellで最後の一文字を取り出す
■ 変数の空行を削除するサンプルプログラム
■ IndexOf の落とし穴
■ 行がコメントか調べるサンプルコード
■ contains で大文字小文字を区別しないサンプル(Case Insensitive)

21例外処理
■ ScriptHalted が Powershell で表示される原因

22ステートメント
■ "トークン '&&' は、このバージョンでは有効なステートメント区切りではありません"の原因と対処

23オブジェクト操作
■ オブジェクトのプロパティ名を取得する

24関数
■ PowerShell の引数チェックを簡単チェック
■ Powershell で関数を定義する場所は決まっている

Active Directory
■ remove-adcomputer を確認なしで実行
■ Windows AD ドメイン参加コマンド
■ 削除された ADのオブジェクトを表示する
■ Get-AdfsProperties が見つからない場合の対処
■ Windows AD のグループを作成する
■ Get-Aduser や Get-ADGroup でエラーの場合に新規に追加する方法
■ New-ADUser あるいは New-ADGroupで"オブジェクトが見つかりません"のよくある間違い
■ "サーバーがプロセスを実行しようとしません"でWindows ADにユーザが追加できない

DNS
■ テキストファイルを読み込み順番にDNSサーバで名前解決を行うサンプル
■ DNS レコードを取得するPowershell コマンドレットサンプルの紹介 (逆引きレコード含む)
■ 逆引きゾーン を作成する Windows コマンド
■ Windows DNSサーバに逆引きレコード(PTR)を作成するサンプル

Foreach
■ Foreach -parallel による並列ジョブ実行のPowershellサンプル
■ "Using 変数を取得できません" の原因と対処

grep
■ 含まれない文字列を grep 検索し見つかったら置換するサンプル
■ grep の便利なサンプル | 再帰的検索など

inlinescript
■ Powershell でInlineScript 関数の戻り値が"トランスクリプトが開始されました"になる不思議な現象

transcript
■ "start-transcript  トランスクリプションを開始できません"の原因と対処
■ start-transcript が robocopy で結果が出力されない場合の対処

Unixライクコマンド
■ Powershell で tail -f を実現する

workflow
■ Workflow の InlineScript での戻り値
■ インスタンスを中止する追跡参加コンポーネントの呼び出し中にエラーが発生しました。詳細については内部例外を参照してください。
■ ワークフローで複数のps1を並列処理するサンプル

エラー
■ $error[0] エラー情報の発生行を出力する

オブジェクト操作
■ format -* コマンドが既定の書式と競合している可能性があります。

その他
■ インストールされているアプリケーション一覧を出力する
■ Get-WmiObject で指定可能なリストを一覧表示させる方法
■ Powershell のエスケースシーケンス
■ "Visible" の設定中に例外が発生しました: "値 "True" を型 "Microsoft.Office.Core.MsoTriState" に変換できません。
■ Outlook,Excel,PowerPoint,Work,Access,IE,Explorerを起動しファイルを開き終了するサンプル
■ コマンドプロンプトからカレントフォルダでPowershellを開く方法
■ 奇数、偶数を判定するサンプルプログラム
■ foreach -parallel -ThrottleLimit で6以上を指定しても5しか動作しない
■ Write-Host のカッコ有りと無しの違いとは
■ Powershell (ps1)を実行するとメモ帳が起動されてしまう原因と対処
■ write-outputで複数文字を改行せずに出力する方法
■ 自分が他のシェルからコールされたか確認する
■ Powershell プログラムをいきなり始める人にまず読んで欲しいこと
■ $lastexitcode を安全に初期化するコマンド
■ コメント行を除外して行数をカウントするサンプルプログラム
■ ページファイルを新規生成するコマンド
■ Powershell で対応する括弧を簡単に確認する
■ テキストファイルをコードとして実行する
■ 音声読み上げ(合成音声)の簡単サンプル(2行)
■ テキストファイルの文字コードが Shift-JIS か UTF-8 を判定する
■ Word の機能を利用してテキストファイル内の日本語を校正する
■ コマンドプロンプトでUSBの一覧を出力するサンプル
■ デフォルトの起動ディレクトリを変更する設定

ディスク
■ ラベル名からドライブ名(Drive letter )を変更するサンプル
■ 【Set-Partition】ドライブ名を変更するサンプルコード
■ Get-volumeでFriendlyNameが取得できない
■ ディスクのシリアルナンバーを表示する
■ MBR か GPT ディスクかを判断するコマンド
■ mount-diskimage コマンドで ISO ファイルをマウントする
■ mount-diskimage : ファイルまたはディレクトリが壊れているため、読み取ることができません。

ディレクトリ
■ Current Directoryの取得と設定サンプル
■ サイズの大きいフォルダを見つけるサンプルプログラム

ネットワーク
■ 同時に複数IPアドレスへPINGを送信するコード
■ Resolve-DnsNameで複数のDNSサーバを指定する方法
■ FQDN 文字列からホスト名を取り出すサンプルコード
■ DNS サーバの IP アドレスを設定する
■ IPアドレスの第四オクテッドを取得するサンプルコード
■ DNSサフィックスにドメインを追加するサンプルコード
■ PING を送信し結果を処理するサンプルコード
■ ポート確認を Test-NetConnection コマンドレットで行うサンプル
■ IPアドレスをネットワークアドレスとホストアドレスに分解するサンプル

パラメータ
■ Powershell スクリプトの引数をオプション名で指定する

ファイル処理
■ Get-Contentでファイルを開き、空白行を無視して処理を行うサンプルコード
■ csv ファイルに記載されたIPとホスト名を読み込むサンプル
■ ini ファイルから変数を読み込み設定するサンプルコード
■ 複数 zip ファイルを圧縮や解凍するサンプルコード

画像処理
■ 画像ファイルを変換するサンプルコード

外部プログラム実行
■ robocopy 実行時の戻り値判定

性能
■ コマンドの実行時間を簡単に計測する

日付時間の計算
■ タイムゾーンを取得するコマンド
■ 処理の所要時間を求める
■ "文字列は有効な DateTime ではありませんでした"がParseExactで発生する
■ 文字列を日付時刻(DateTime)に変換するサンプルプログラム5選
■ 昨日、明日、明後日、一か月前、来年、翌年などを計算する
■ 日付と日付の引き算を行うサンプルプログラム

変数
■ Powershell 変数の基本
■ 変数の展開方法
■ 用語 'FALSE' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
■ Powershell で動的に変数名を設定するサンプルコード
■ ファイルの中身を変数に入れる

戻り値
■ バッチファイルから Powershell を呼ぶ場合の戻り値

連想配列
■ 多次元の連想配列(二次元表にアクセス)のサンプルコード



[FAQ CENTER トップ]