- ベストアンサー
VBスクリプトで指定したコマンドで日付を取得する方法
- VBスクリプトで指定したコマンドを使用して日付を取得する方法について困っています。具体的には、cip△dtコマンドの出力から日付を取得し、DOSの変数として保持したいです。
- VBスクリプトを使用して、前日の日付を取得し、DOSの変数として保持する方法を知りたいです。
- VBスクリプトでの日付取得に関して困っています。具体的には、VBスクリプトで指定したコマンドの出力から日付を取得したいです。助けていただけると助かります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
cip コマンドについて知らないのですが、 コマンド > ファイル名 で標準出力の内容をファイルに保存することができます。 VBScript からは、このファイルから読込すれば、 コマンドの実行結果をVBScript に取り込むことができます。 また、 Set WshShell = CreateObject("WScript.Shell") Set oExec = WshShell.Exec("コマンド") のようにすれば、 oExec.StdOut から標準出力を取り込めます。 ところで、DOSの変数ってなんどすか 環境変数のこと? バッチ変数のこと? VBスクリプトで実行しているならVBスクリプトの変数で保持すれば良いように思います。
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
#2補> 基準の日から前後する日を求めるには DateAdd 関数が使えます。 結局どのようにしたいのかよくわかりません。
お礼
仕様が変わってしまいました。わかりづらい仕様すみませんでした。結局、日付を取得し、ログを採取し、障害検知をする仕組みではなくなってしまったんです。 ありがとうございました。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
>つまり環境変数です。 連接の仕方がもう一つわからないんですけど、 VBScript から環境変数の値は取得できますし、値の設定もできますけど、 VBScript 内で設定した環境変数は、別プロセス(スクリプトの実行が終了して、別のバッチを立ち上げても)からは参照できません。 つまり、別のバッチから参照できるような環境変数を設定できません。
補足
本当にしたいことはDOSの中で、 (1)運用日付 (2)当日日付 (3)翌日日付 を求めることができることが条件です。 当日日付を求めることはできますが、 (1)は日付を分割して当日日付を-2すればいいのかもしれません。(3)は+1すえばいいのかもしれません。 VBスクリプトは要らないのかもしれません。 今、過去ログを参照しています。
補足
cipというのはA-AUTOというJOB管のミドルウェアの特別なDOSで実行されるコマンドです。 もうひとつバッチファイルがあって、そちらで取得した日付をバッチファイルで判定してリターンコードとログ出力で、正常・異常を検知する仕組みを作ろうとしています。つまり環境変数です。