'find' não é reconhecido como um programa operável de comando interno ou externo ou arquivo de lote

1

Estou recebendo este erro quando uso a função FIND em um loop FOR aninhado e IF em um arquivo em lotes.

'find' is not recognized as an internal or external command operable program or batch file

Estou tentando encontrar os maiores arquivos no diretório:

SET /P number=Enter the number of files to find:

for /l %%x in (1,1,!number!) do (

for /r %%h in (*) do (
IF %%x GTR 1 IF !check! geq %%~zh (
IF !check! equ %%~zh (
echo !chkn!
FIND "!chkn!" Biggest.txt
IF %errorlevel% equ 1 set res=notfound
FIND "!chkp!" Biggest.txt
IF %errorlevel% equ 1 set res=notfound
IF "!res!" equ "notfound" (
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
)
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
IF %%x equ 1 (
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
)

SET check=!tes!
SET chkn=!name!
SET chkp=!path!

echo !chkn!
echo !check!

echo %%x number: >> Biggest.txt
echo name = !chkn! >> Biggest.txt
echo size = !check! >> Biggest.txt
echo path = !chkp! >> Biggest.txt
echo file is created
SET tes=0
)
    
por Sachin 06.08.2012 / 12:19

1 resposta

1

Apesar da falta de detalhes, eu acho que seu comando Find não usa c: \ windows \ system32 \

Isso funciona

SET /P number=Enter the number of files to find:

for /l %%x in (1,1,!number!) do (

for /r %%h in (*) do (
IF %%x GTR 1 IF !check! geq %%~zh (
IF !check! equ %%~zh (
echo !chkn!
c:\windows\system32\FIND "!chkn!" Biggest.txt
IF %errorlevel% equ 1 set res=notfound
c:\windows\system32\FIND "!chkp!" Biggest.txt
IF %errorlevel% equ 1 set res=notfound
IF "!res!" equ "notfound" (
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
)
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
IF %%x equ 1 (
IF !tes! LSS %%~zh (
SET  tes=%%~zh
SET  name=%%~nh
SET  path=%%~ph
)
)
)

SET check=!tes!
SET chkn=!name!
SET chkp=!path!

echo !chkn!
echo !check!

echo %%x number: >> Biggest.txt
echo name = !chkn! >> Biggest.txt
echo size = !check! >> Biggest.txt
echo path = !chkp! >> Biggest.txt
echo file is created
SET tes=0
)
    
por 06.08.2012 / 12:28