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 回答