I am running a following command,

@echo off cls for /r D:\ %%a in (*) do if "%%~nxa"=="new.txt" set p=%%~dpnxa if defined p ( echo File found its path - %p% pause ) else ( echo File not found ! pause ) 

it will search for the file named new.txt on whole drive D: folders and sub folders as a final result, it shows the full path of that file new.txt as an output like below, (lets assume new.txt file in D:\folder\ )

File found and its path - D:\folder\new.txt Press any key to continue . . . 

But the problem is , if there is multiple file with same name new.txt in drive D: on different folder or sub folder , it only shows one path output.

My need is, want to show all files path with the same name new.txt on drive D: like below output,

Expected Output need like this,

Files found : 4 Files Paths : 1 - D:\folder\new.txt 2 - D:\new folder\new.txt 3 - D:\files\new.txt 4 - D:\folder\new\new.txt 

pls help..Thx in Advance.

1 Answer

I want to show all files path with the same name new.txt on drive D:

Expected Output:

Files found : 4 Files Paths : 1 - D:\folder\new.txt 2 - D:\new folder\new.txt 3 - D:\files\new.txt 4 - D:\folder\new\new.txt 

Use the following batch file:

@echo off setlocal rem change to the correct directory cd /d d:\ rem count the files dir /b new.txt /s 2> nul | find "" /v /c > %temp%\count set /p _count=<%temp%\count rem cleanup del %temp%\count rem output the number of files echo Files found : %_count% rem list the files echo Files Paths : dir /b new.txt /s endlocal 

  • An A-Z Index of the Windows CMD command line
  • A categorized list of Windows CMD commands
  • del - Delete one or more files.
  • dir - Display a list of files and subfolders.
  • endlocal - End localisation of environment changes in a batch file. Pass variables from one batch file to another.
  • find - Search for a text string in a file & display all the lines where it is found.
  • set - Display, set, or remove CMD environment variables. Changes made with SET will remain only for the duration of the current CMD session.
  • setlocal - Set options to control the visibility of environment variables in a batch file.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy