Windows PowerShell が便利な件
Windowsコマンドで日付計算が必要になったため、PowerShellを試してみた。
これはなかなか良さ気。
※1:実行ポリシー
各ps1ファイルの実行可否は、Windows PowerShell の実行ポリシー設定次第で決まる。
(実行ポリシーに関する詳細説明は、PowerShellで以下を実行することで参照可能。)
get-help about_signing
現在の実行ポリシーの確認は以下のコマンドで可能。(デフォルトは「Restricted」、つまりいかなるps1ファイルも実行できない状態だ。)
Get-ExecutionPolicy
実行ポリシーの変更は以下のコマンドで。ただし、コマンドプロンプトを管理者権限で実行(右クリック>管理者として実行)する必要がある点に注意。
Set-ExecutionPolicy {実行ポリシー}
実行ポリシーには以下の選択肢がある(制約が強い順)。
- Restricted: 任意のスクリプトを実行不可
- AllSigned: 信頼済発行元の署名ありのスクリプトのみ実行可能
- RemoteSigned: 自作成の任意のスクリプトを実行可能。それ以外は、信頼済発行元の署名ありのもののみ実行可能
- Unrestricted : 任意のスクリプトを実行可能(発行元、署名有無にかかわらず)
基本的には「RemoteSigned」を選択しておけば良いだろう。
コマンド例:明日の日付をyyyy/MM/ddで出力
$NOW_DATE=(Get-Date) $TOMMOROW_DATE_YYYYMMDD="明日の日付:"+$NOW_DATE.AddDays(1).ToString("yyyy/MM/dd") $TOMMOROW_DATE_YYYYMMDD