| FILE CONTAINS [see if a file contains some text].cmd |
The example below uses the "FIND" command to search for
text in a file sometimes this command can be problematic and it is more
limiting than the "FINDSTR" command which can handle
regular expression search strings
as well.
| The Code for: "FILE CONTAINS [see if a file contains some text].cmd" |
This is the example, a shortcut was installed to this code :
@echo off ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ :: $Header: C:/DBAREIS/Projects.PVCS/Win32/ScriptingTipsAndTricks/EXAMPLE[cmd].FILE CONTAINS [see if a file contains some text].cmd.pvcs 1.0 11 Jul 2014 19:31:02 USER "Dennis" $ ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ setlocal set FailureText=cannot ::--- Create a file with the commands output -------------------------------- echo DO SOMETHING (assume we can't trust the ERRORLEVEL but on it's failure echo the output will contain the text "%FailureText%"). set OutputFile=%TEMP%\SomeProcess-OUTPUT.txt set SOMECMD=dir "z:\NoSuch\NoSuch.txt" echo [%FailureText%] Sanity Check > "%OutputFile%" 2>&1 %SOMECMD% > "%OutputFile%" 2>&1 ::--- Type the result so you can see it ------------------------------------- echo.&echo. echo -------------[ SOF ]--------------- type "%OutputFile%" echo -------------[ EOF ]--------------- echo.&echo. ::--- See if the file contains the text (case insensitive search) ----------- set FAILED=Y find.exe /I "%FailureText%" "%OutputFile%" >nul 2>&1 if errorlevel 1 set FAILED=N echo CMD FAILED = %FAILED%
Please note that that I am not trying to show how great I am by producing batch files 9,000 characters long on one line that no one will understand or be able to debug when they go wrong. I am going out of my way to comment the code and make it verbose so beginners and advanced users will both benefit. I don't claim to be an expert that knows everything, if I'm wrong or make a mistake then please contact me and let me know :-)
![]() | ![]() |