0

管理ワークステーションから実行できる Windows バッチ スクリプトを探しています。このスクリプトは、リモート マシンの C: ドライブにある特定の隠しフォルダーを検索し、存在するかどうかを教えてくれ、最終更新日を教えてくれます。結果はログ ファイルに出力されます。フォルダ パスは、「C:/ProgramData/Folder1/Folder2」のようなものです。「ProgramData」フォルダーは非表示で、「Folder2」はすべての詳細を取得するフォルダーです (存在する場合は、最終更新日)。可能であれば、これを PSEXEC の使用に組み込みたいと考えています。

機能するものを探し回り、フォルダーが存在するかどうかを通知するスクリプトをいくつか見つけました。しかし、正確なシナリオが見つからないようです。私はスクリプトに精通していますが、想像力の範囲で専門家ではありません. どんな助けでも大歓迎です!

乾杯

編集:

さて、これが私がこれまでに持っているものです。コマンド プロンプトを使用して、特定のコンピューターで探していたサブディレクトリを一覧表示することができましたDIR。それは次のようなものでした:

dir C:\ParentFolder\ChildFolder /ad /o-d /b

「ChildFolder」ディレクトリ内のディレクトリ一覧を表示します。出力は次のようになります。

dir C:\ParentFolder\ChildFolder /ad /o-d /b
folder1
folder2
folder3
folder4

したがって、私が今必要としているのは、このグループ内の最新の変更があったフォルダーを表示する方法を組み込むことです。たとえば、「folder2」がグループ内で最後に変更されたフォルダーである場合、コマンド ラインに「folder2 04/08/14 04:13 PM」とだけ表示するようにします。

4

1 に答える 1

0

dir /?具体的に見てみましょう/T。また、ファイルまたはディレクトリが存在するかどうかを確認if /?する必要があります。if exist以下は、存在する場合、フォルダーの最後の書き込みの日付と時刻を取得します。

@echo off
set folder=C:\ProgramData\Folder1\Folder2
if exist %folder% (
    for /f "skip=5 tokens=1,2" %%a in ('dir %folder%') do set writetime=%%a %%b & goto :break
) else echo %folder% Does Not Exist & goto :EOF
:break
echo %folder%   %writetime%

出力をファイルに書き込むには、>(write) または>>(append) 演算子を使用できます。echo Mate >> logfile.txt.

于 2014-04-02T23:34:46.430 に答える