Hopefully "ScriptingTipsAndTricks" helps you with your batch file or vbscript scripting :-)
[Bottom][Contents][Prev]: Environment Variable Indirection - one variable contains full or partial name of another[Next]: FILE NAME Manipulation - returns a files fullname, shortname, extension, path etc
\->Batch Files->FILE CONTAINS - see if a file contains some text

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.

[anchor]

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 :-)


Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006, 2007, 2008 & 2009 for the Windows SDK (Windows Installer) area.Please email me any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Prev]: Environment Variable Indirection - one variable contains full or partial name of another[Next]: FILE NAME Manipulation - returns a files fullname, shortname, extension, path etc


ScriptingTipsAndTricks© is (C)opyright Dennis Bareis 2003-2008 (All rights reserved).
Sunday September 07 2014 at 12:50pm
Visit ScriptingTipsAndTricks's Home Page
Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006, 2007, 2008 & 2009 for the Windows SDK (Windows Installer) area.