• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WMICでの日付指定について)

WMICでの日付指定について

このQ&Aのポイント
  • WMICでバッチを作成して、イベント抽出をしようと思っています。日付の指定方法が間違えていますでしょうか。
  • WMICでバッチを作成して、イベント抽出をしようと思っています。日付を指定しても、指定以外の日付もテキストに書かれてしまいます。
  • XPでも2008でも同じことが起こります。どなたか、日付の正しい指定方法をお教えください。

質問者が選んだベストアンサー

  • ベストアンサー
  • maesen
  • ベストアンサー率81% (646/790)
回答No.1

WMICも同じだと思いますが、WMIではwhereの演算子の優先順位はandのほうが高くなると思いますがその辺は大丈夫でしょうか? 優先順位 1 NOT 2 AND 3 OR 以下のWebサイトに詳しく書かれています。 http://gallery.technet.microsoft.com/scriptcenter/8657f287-acbd-4d16-b9e7-180aa4a03b53

yosihioo
質問者

補足

仰るとおり、演算子が関係していました。 orとorを()でくくったら、日付指定のフィルタがかかりました。 以下、バッチを抜粋。 wmic NTEVENT where "((EventType='5' or EventType='2' or EventType='1') and TimeGenerated >= '2011/12/01')" get EventType, LogFile, EventCode, TimeWritten, Message /FORMAT:CSV >> %Kyo01%_log.txt

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • バッチファイルにてFTPで指定したファイルを取得する

    OSはWindoswXPProです。 以下のようなBATファイルとバッチファイルを作成しました。 ---FTP.bat--- echo off ftp -s:get.ftp ---get.ftp--- open 10.0.X.X username password cd /log get log.yymmdd(実際には日付) c:\access_all_log.txt quit logというディレクトリには日次でログファイルが作成され ファイル名としてlog.yymmddと名づけられています。 やりたいことは2つあります。 1つめはftpするファイル名の日付部分をコマンドなどから 範囲指定して取得するファイルを指定できないか。 (たとえば070301~070315のファイルを一括で取得したい) 2つ目はftpでのファイル取得終了後に続いて バッチスクリプトを流したいのですが、その方法。 お分かりになる方いらっしゃいましたらよろしくお願いいたします。

  • 日付付きのログファイル名

    バッチのログファイルを日付をつけて保存するようにしようと思っています。 ----------------------------------------------- set DATE=%date:~0,4%%date:~5,2%%date:~8,2% set logfile=c:\opt\BackupTools\log\BACKUP_%DATE%.log echo メッセージ >>%logfile% ----------------------------------------------- 1回目に実行時には期待通りBACKUP_20060909.logのようなファイルが出来たりしますが、2回目の実行になると出来たファイルに上書きされないし、新しく生成されるログファイルはBACKUP_2006099.logだったり、BACKUP_2006.logになったりしますが、何が原因なのでしょうか。

  • 日付の抽出

    アクセスで日付が入力されているサブフォームから期間を指定して抽出したいと考えています。 Me!sub担当者別.Form.Filter = "日付 Between #" & Me!txt開始 & "# And #" & Me!txt終了 & "#" というふうにしたのですが、txt開始に02/02/02、txt終了に02/03/27を入力すると表示されるのに、txt開始に02/03/20とすると表示されるはずのデータが存在しているのに表示されません。 どうしてこういう風に表示されたり、されなかったりするのかがよく分かりません。 よろしくお願いします。

  • DOS findコマンドのバッチでストールする

    DOSコマンドプロンプトで.batファイルを作成。 内容は find "2007:01" access_log_2007_04_11.txt >log2007041101.csv このバッチファイルを、検索するaccess_log_2007_04_11.txt と同じフォルダー上において、ダブルクリックで起動すると。 コマンドプロンプトが開くのだが、以前実行した、 find "2007:00" access_log_2007_04_05.txt >log2007040500.csv が、延々と実行され。 コマンドプロンプトを閉じても log2007040500.csv を、消しても消しても、作成される。 システムを落とすしかなくなる。のです。 4月の頭では正しく動作していたんですが???

  • バッチコマンドで指定行を抽出しファイル名を含める

    日付毎に複数ファイルになっているftpのログファイルから必要な行だけを1ファイルに まとめたいのです set spath=d:\データ for /d /r %spath% %%d in ( * ) do ( type "%%d\*.log"|findstr /i ".csv">>%spath%\抽出ログ.txt ) で目的のものにかなり近いデータを抽出することができました ex110825.log 00:01:21 172.21.111.123 [6443]created /hoge/hoge.csv 226 しかし問題がありこのデータには日付がありません 日付部分はファイル名に含まれていますex110825.logのように・・・・ なので ex110825.log 00:01:21 172.21.111.123 [6443]created /hoge/hoge.csv 226 工夫次第でこのような形でデータを出力する事ができるでしょうか? アドバイス下さい

  • 指定した値の範囲内の列を抽出

    Access2000を使用 前回答えてもらったとおり指定した1つの値からはデータの抽出成功しました。 で今回も同じような内容で、指定した値(月初から今日の日付)までの値を抽出するようなSQL文がわかりません。 以下はwhere以降で、BETWEENを使用しましたが抽出できませんでした。 他の方法はございますか? where (クエリー名.クエリーカラム名) BETWEEN #" & Format(Date - mday + 1, "yyyy/mm/dd") & "# AND #" & Format(Date, "yyyy/mm/dd") & "#" よろしくお願いします。

  • バッチファイル 時間指定

    バッチファイルをスタートアップに入れています。 手軽で便利なのですが、起動するたびに出てしまうので、if文か何かを使って、前回の実行してから12時間経っていない場合はバッチファイルを終了させるようにできないでしょうか。 robocopyを使ったバッチで、オプションでログを作成するようにしています。そのテキストファイルの作成時間で12時間経っているかどうか判断できればと思っています。 と質問したところ、以下の回答を得ました。 check.vbs ------------------------- Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.GetFile("logfile.txt") WScript.Quit(DateDiff("h",f.DateCreated,Now)>12) ------------------------- バッチでは、先頭で、 cscript check.vbs || exit これを追加したのですが、12時間経っていなくても実行されます。 なぜなのでしょうか。

  • バッチファイルにて指定ファイルの移動について

    初心者の為バッチファイルの御教授お願いします。 D:\tempフォルダ直下に下記のようなファイルがあります。 000008000120160224180000MAIL.TXT 000008000120160225180000MAIL.TXT 000008000120160226180000MAIL.TXT 000008000120160227180000MAIL.TXT みていただくと分かると思いますが日付を含んだファイル名となっております。 このファイル名から日付を取得し、指定した日数より古い日付を持ったファイルをD:\temp\errフォルダへ移動したいと思っています。 例えば日数を1とするとD:\tempに下記のみが残るようにしたいと思っています。 000008000120160227180000MAIL.TXT 残りはD:\temp\errへ移動

  • oracle9i 日付データに関して

    お世話になっております。 Oracle9i(9.0.1.0.1) Linux RedHat7.3J JDBC 接続でOracle Type4 ドライバを使用しています。 本日の日付は2003/09/10で、sysdateも2003/09/10です。 この環境で、以下のSQL文を発行すると、 0件が返ってきます。 select count(*) from dual where '20030910' >= sysdate 以下の条件だと1件返ってきます。 select count(*) from dual where '20030911' >= sysdate さらに、sysdateにフォーマットを指定すると select count(*) from dual where '20030910' >= to_char(sysdate,'yyyymmdd') 1件返ってきます。 質問は、sysdateにto_charのフォーマットを指定した場合と 指定しなかった場合との違いについて教えていただきたいのと、 その違いが明文化されているサイトやotnドキュメントが ありましたら教えていただきたいのです。 otnドキュメントの日付データのところを読んだのですが 詳しい事はわかりませんでした。 宜しくお願いいたします。

  • 日付の範囲検索で

    ACCESSで商品の販売管理システムを作っています。 商品マスタの中に、販売開始日、販売終了日のフィールドがあるのですが、常時販売している商品はこのフィールドは空になっています。 また、今まで販売していたけど近々終了する商品や、近々販売を開始するけど、終了が未定の商品は片方に日付が入り、もう片方は空になっています。 こういう状態で指定した日にちに販売されている商品の一覧を作りたいのですが、where の書き方が分かりません。 何も考えずに書くと、以下のようになると思います。 SELECT 商品マスタ.* FROM 商品マスタ WHERE (販売開始日 IS NULL AND 販売終了日 IS NULL) OR (販売開始日 IS NULL AND 販売終了日 >= #2003/12/15#) OR (販売開始日 <= #2003/12/15# AND 販売終了日 IS NULL) OR (販売開始日 <= #2003/12/15# AND 販売終了日 >= #2003/12/15#) ちょっと長いので、もっとスマートに書く事はできないものでしょうか。 よろしくお願いします。