
プレーン テキスト ファイルにリダイレクトするバッチ ファイルを作成しました。バッチは指定されたパスに移動し、そこで dir コマンドを実行して、出力をテキスト ファイルにリダイレクトします。
テキスト ファイルを開くとツリー全体が表示されますが、最後に変更されたフォルダーは 1 つだけ表示したいのです。
それで、そのフォルダーだけを選択して、それをテキスト ファイルに印刷するために、どのようなコマンドを発行すればよいか、どなたかアドバイスをいただけませんか。
以下は私のバッチファイルの内容です:
S:
cd S:\log\logit-esb\dhl\subscriptions
dir >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt
以下のバッチ ファイルを実行すると、出力がテキスト ファイルに送信されます。
Directory of S:\log\logit-esb\dhl\subscriptions
05/01/2015 04:25 PM <DIR> .
05/01/2015 04:25 PM <DIR> ..
05/01/2015 04:25 PM <DIR> processed
0 File(s) 0 bytes
3 Dir(s) 4,682,932,224 bytes free
Volume in drive S is System
Volume Serial Number is 42A7-D3B7
私の要件は、出力ファイルに以下の行のみを表示することです。
05/01/2015 04:25 PM <DIR> processed
だから、誰かがこれを達成するのを手伝ってください。
答え1
バッチ ファイル内の次のコマンドは、必要な操作を実行します。
dir | findstr "processed" >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt
ファイルに追加されるSystem_monitoring.txt
ので、まずは空のファイルであることを確認する必要があります...>>
パイピングとリダイレクト
テキスト ファイルは、FINDSTR にパイプまたはリダイレクトできます。
パイプからのデータ ストリーム TYPE file.txt | FINDSTR "searchString"
リダイレクト経由の標準入力 FINDSTR "searchString"
さまざまなデータソースの指定は相互に排他的です。FINDSTRは、ファイル名引数、/F:ファイルオプション、リダイレクトされた入力、またはパイプ入力。
答え2
これは Windows 7 に含まれている Powershell であり、パス内の最後に変更されたフォルダーを表示します。
get-childitem -path c: | sort-object LastWriteTime -descending | select -first 1 | format-table -hidetableheaders