次の項目は別ページに分割しました。
PowerShell に関する基本的な情報は次のページにまとめています。
スクリプト
公式サイト:
使い方
PowerShell プロンプトから、スクリプト (.ps1) を実行する。
> .\Path\to\Script.ps1
コマンドプロンプトから、スクリプト (.ps1) を実行する。
>PowerShell -File .\Path\to\Script.ps1
参考:
PowerShell の PS1 ファイルの作成と実行 | マイクロソフト系技術情報 Wiki
文法
ドキュメント:
If 文
ドキュメント:
If ステートメント | Microsoft Docs [公式]
参考:
PowerShell でもっといい条件文の書き方 5選 – Qiita
While 文
ドキュメント:
While ステートメント | Microsoft Docs [公式]
Do While 文/Do Until 文
ドキュメント:
Continue / Break
ドキュメント:
Continue | Microsoft Docs [公式]
論理演算 (and / or / xor / not)
- 論理積 (and):
-and
- 論理和 (or):
-or
- 排他的論理和 (xor):
-xor
- 否定 (not):
-not
あるいは!
ドキュメント:
論理演算子について | Microsoft Docs [公式]
参考:
PowerShell の if 文で and / or / xor / not を記述する方法 | Windows と暮らす
ドットソース
ドキュメント:
スクリプトスコープとドットソーシング | Microsoft Docs [公式]
ドットソーシング演算子 | Microsoft Docs [公式]
参考:
PowerShell で相対パスで指定したスクリプトをドットソース形式で読み込む | 迷惑堂本舗
空文字を判定する
変数が空文字もしくはヌルであるかを判定するには、[String]::IsNullOrEmpty
メソッドを使う。
if ([String]::IsNullOrEmpty($str)) {
Write-Host '$str is null or empty.'
}
Code language: PowerShell (powershell)
ドキュメント:
String.IsNullOrEmpty メソッド | Microsoft Docs [公式]
参考:
文字列が空文字や NULL であるかを判定する方法 | バヤシタ
Powershell で文字列が null かどうか判定する方法 | Rainbow Engine
PowerShell で文字列などの変数の Null または空文字を確認するには | YOMON8.NET
PowerShell で変数の Null や空文字を判定する方法 | miajimyu note
ヌルを判定する
ヌルを判定するには -eq
演算子で $null
と比較する。
if ($var -eq $null) {
Write-Host '$var is null.'
}
Code language: PowerShell (powershell)
ドキュメント:
$null について知りたかったことのすべて | Microsoft Docs [公式]
参考:
PowerShell で文字列などの変数の Null または空文字を確認するには | YOMON8.NET
PowerShell で変数の Null や空文字を判定する方法 | miajimyu note
戻り値を返す
実行に成功した場合は 0
を返す。
exit 0;
Code language: PowerShell (powershell)
エラーが発生した場合はエラーコードを返す。
exit 1;
Code language: PowerShell (powershell)
ドキュメント:
Exit | Microsoft Docs [Official]
参考:
PowerShell での終了ステータス ($?、$LastExitCode) について確認してみた – Qiita
引数を渡す
$Args[]
配列を参照するParam
キーワードを使って引数を宣言する
参考:
Powershell で引数を受け取る | マイクロソフ党ブログ
PowerShell スクリプト引数 (Param) の Tips | MURA’s Home Page
About Functions Advanced Parameters | Microsoft Docs [Official]
How to pass command-line arguments to a PowerShell ps1 file – Stack Overflow
引数の解釈
ドキュメント:
about_Parsing | Microsoft Docs [公式]
about_Quoting_Rules | Microsoft Docs [Official]
参考:
PowerShell の引数展開に関する仕様まとめ – Qiita
Powershell is removing comma from program argument – Stack Overflow
Can I make this PowerShell Script accept commas? – Super User
バッチファイルから呼び出す (.bat)
@echo off
PowerShell -File .\Path\to\Script.ps1
pause
Code language: DOS .bat (dos)
参考:
バッチファイルから PowerShell を呼び出す方法 – Qiita
PowerShell を楽に実行してもらうには – Qiita