0

我需要一个批处理文件来搜索计算机中的.exe文件并将结果导出到.txt文件中。我希望计算机名称出现在.txt文件中,并让文件说明它是否.exe位于该计算机上。看看我到目前为止所拥有的。好像找.docx文件没问题。

我究竟做错了什么?

@echo off
If exist c:\filename.exe echo %COMPUTERNAME% yes >> \\servername\location\test.txt
If NOT exist c:\filename.exe echo %COMPUTERNAME% no >> \\servername\location\test.txt
4

2 回答 2

1

是否要在当前计算机的所有文件夹中搜索给定的 .exe 文件?下面的批处理文件使用了一个小技巧:它假定 .exe 文件位于 PATH 变量的文件夹之一中(通常会发生),因此搜索是立即的:

@echo off
for %%a in (filename.exe) do set filePath=%%~$PATH:a
if defined filePath echo %COMPUTERNAME% yes >> \\servername\location\test.txt
if NOT defined filePath echo %COMPUTERNAME% no >> \\servername\location\test.txt

编辑: 添加了整个磁盘的新版本

@echo off
set filePath=
for /R C:\ /D %%a in (*) do if exist "%%a\filename.exe" set filePath=%%a& goto continue
:continue
if defined filePath echo %COMPUTERNAME% yes >> \\servername\location\test.txt
if NOT defined filePath echo %COMPUTERNAME% no >> \\servername\location\test.txt
于 2012-11-16T19:46:49.567 回答
-2

尝试以下脚本:

Echo OFF
dir G:\XX in (*.*) /b > peru.txt
于 2013-10-12T01:37:20.723 回答