Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I have an administrator account on a Windows 7 x64 machine. It is not THE administrator account, the account is simply a member of the administrators group.

The install is default. When the user opens a command prompt it ends up in the users' %HOMEPATH% directory where you'll find various directories like the Documents folder. If the user uses the following (windows) FIND command, an "Access Denied" error occurs:

FIND /I "My String" C:\Users\Rann\Documents
Access denied - C:\USERS\RANN\DOCUMENTS

Using runas or right-clicking on the command prompt to run it as an administrator does not change this behaviour; an administrator-level cmd.exe still gives me the same error. Changing the path to any other directory gives the same error.

My question is thus: How is one supposed to use the FIND (and possibly other) commands? What rights are needed?

share|improve this question

3 Answers 3

You are trying to execute find on a directory. It only works on files. Try this:

FIND /I "My String" C:\Users\Rann\Documents\*
share|improve this answer
    
You're right! I can't believe it ;-). Thanks. –  rann May 29 '10 at 9:54
    
Right! So you have to know beforehand in what folder the file or files are located to successfully use the Find command to find the text string you are looking for. It doesn't understand recursion. It lost that ability somewhere, somehow, along the way, during "development". For this reason, you might as well cd into the directory where the file is and issue find /i "my string" * which would search all the files in that folder for "my string". –  sammyg Jun 8 at 14:01

This is not right. FIND used to search all subdirectories, but no longer 'can' because of Win 7's security. You have to mount the filesystem OFFLINE to properly use FIND.

share|improve this answer
    
You can add Windows Vista to the list of Windows versions that no longer have a Find command that understands recursion. I am running Vista Ultimate, x64 at the moment and I am seeing the same problem. –  sammyg Jun 8 at 14:08

That is true, it seems that Find no longer recurses down anymore. But hey, no worries, we can use a little scripting help here. Here is one that I tried and it works:

for /R %G in (*) do (find "String_I_am_Looking_For" %G)

This will search all the sub-folders.

This may produce several lines of output. So it may be easier to direct the output to a file:

for /R %G in (*) do (find "String_I_am_Looking_For" %G) >> output.txt

And then look for the search string in this file (you can use visual inspection or Ctrl+F for find here).

share|improve this answer
    
A little awkward to locate the actual matches amongst all the junk that the 'find' command outputs, but this does the trick for the odd search! –  John Rix Mar 18 '14 at 11:49
1  
I have edited the command to send the output to a text file - perhaps it is easier this way to use the output that is produced. –  shivesh suman Dec 30 '14 at 6:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.