batファイルから呼び出して実行したい D:¥Hourly2.ps1 の内容は以下。
1 2 |
$date = Get-Date -Format "yyyyMMddHHmmss" Invoke-WebRequest -UseBasicParsing -URI http://192.168.11.33/Hourly+$date |
要するにESP8266のサーバーに送信するときにこちらの時刻を付け加えたい。
batファイルの内容は、
1 2 3 |
powershell Set-ExecutionPolicy RemoteSigned powershell D:\Hourly2.ps1 powershell Set-ExecutionPolicy Restricted |
とやれって書いてあるのを見つけたのでその通りにやってみた。
実行はされるけど真っ赤な文字が表示される。
斜め読みだが、
Set-ExecutionPolicy -Scope CurrentUser
を実行しろと書いてある。
その通りに実行してみたらさらに何か言ってくる。
どうも、何かもうひとつ、パラメータに値が必要らしい。
https://technet.microsoft.com/ja-jp/library/ee176961.aspx
調べてみたら、ここに「ポリシーが4つありますよ。」と書いてあったので、
何でも実行できるUnrestrictedにしてみた、つまり、batファイルを、
1 2 |
powershell Set-ExecutionPolicy -Scope CurrentUser Unrestricted powershell d:\Hourly2.ps1 |
という内容にする。
今度は、何もエラーが出ずに、無事実行された。
結果は同じだけど。
これで、受け取ったESP8266側で送信時刻を把握できる。