Microsoft KB Archive/74038

= DOSKEY Macro to Search for File Text =

Article ID: 74038

Article Last Modified on 11/16/2006

-

APPLIES TO


 * Microsoft MS-DOS 5.0 Standard Edition

-



This article was previously published under Q74038



SUMMARY
The following DOSKEY macro searches all files in the current directory for the message text specified and displays the output a screen at a time. Any type of file will be searched, regardless of the file's extension. When the macro is executed, the name of each file being searched will be displayed along with the macro command. The macro output will be displayed one screen at a time, which you can examine to locate the message text you are searching for. Finally, the file &quot;output&quot; is deleted so that when using the macro again, the file output only represents one message search.

To create this macro, enter the following at the command prompt:

doskey search=for %a in (*.*) do c:\dos\FIND /i &quot;$*&quot; %a

$g$g output $t type output $b c:\dos\MORE $t del output

(Do not press ENTER until you have entered the whole macro.)

To run this macro, type:

SEARCH message

The message does not require quotation marks and is not case sensitive. The output of the search is displayed one screen at a time. If the text is found, a line with the text will appear below the file. Make sure the FIND and MORE commands in the above search macro are referencing the MS-DOS 5.0 directory. Also, by using the FIND /i switch, the message search will not be case sensitive.



MORE INFORMATION
For example, the following macro searches for the text &quot;No available extended memory&quot; in the current directory and displays the partial result of the command.

First, change to the DOS directory that includes HIMEM.SYS, then enter the following command:

SEARCH no available extended memory

The following output appears:

-- HIMEM.SYS

ERROR: No available extended memory was found.

The file the text was found in was HIMEM.SYS. The line that includes the message starts with &quot;ERROR:...&quot;

A search with the abbreviated &quot;message&quot; field, such as &quot;extended memory,&quot; will result in the same output as above. To make the message search case sensitive, remove the FIND /i switch.

To use this macro every time you start your system, include the following command in your AUTOEXEC.BAT file: doskey search=for %%a in (*.*) do c:\dos\FIND /i &quot;$*&quot; %%a $g$g output $t type output $b c:\dos\MORE $t del output Notice that this batch file command is different from the previous command that is inserted at the command prompt. The difference is that an additional % (percent sign) is included before each &quot;%a&quot; so that the &quot;%a&quot; will be recognized.

Reference(s):

&quot;Microsoft MS-DOS User's Guide and Reference,&quot; version 5.0, pages 175-181, 448-453

Additional query words: 5.00 noupd

Keywords: KB74038

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.