PowerShellスクリプトを実行する
PowerShellのスクリプトの拡張子はps1です。
スクリプトではif文やfor文を書いてスクリプトを記述します。
if(条件式){
}else{
}
複数分岐がある場合は
if(条件式){
}elseif(条件式){
}
とタイプします。
for文は
for($i=1;$i -le 10;$i++){
}
というようにタイプします。
for文のインクリメントする変数は事前に宣言する必要などはありません。
PS C:\tomcat5.5> for($i=1;$i -le 3;$i++){write-host "a"}
とタイプするとaが3回表示されます。
これをa.ps1と言うファイルに保存します。
これを実行するのですが、ps1ファイルのセキュリティがあります。
PS C:\work_ps> get-executionpolicy
Restricted
PS C:\work_ps>
Restrictedとは「全てのスクリプト実行を禁止」を意味します。
その為、現状では実行できませんので、set-executionpolicyで設定を変更します。(管理者として実行しないとエラーとなります。)
PS C:\Windows\system32> Set-ExecutionPolicy RemoteSigned
実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシー
を変更すると、about_Execution_Policies のヘルプ トピック
(http://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシー
を変更しますか?
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): y
PS C:\Windows\system32>
これでremotesignedに変更しました。これは、インターネットを介して実行するスクリプトに証明書を要求するので、ローカルで実行するには問題ありません。
また実行する際はファイル名の前に「./」を付加します。
PS C:\work_ps> ./a.ps1
a
a
a
PS C:\work_ps>
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント