Question

start /wait command not working in batch file with sfc.exe /scannow

Asked by: ScumPuppy

HI all

Im trying to utilise the start /wait command in my batch file so the batch will wait until sfc.exe finishes before it carries on. At the moment I have to use 'pause' so it waits for me to click any key to continue after if has run.

I cant seem to get it to work. Im trying

Start /wait "" "c:\windows\system32\sfc.exe" /scannow

echo has it worked?

pause

In theory this should run sfc.exe and not give me the message "has it worked" until it has finished scanning. But it doesnt, it gives me that message straight away.

The long story is i want to perform a few other tasks after sfc.exe has run but I want it to run the scan before the other tasks run.

Ive tried re-wording it, I recently found out about adding the dummy string in at the front with the "", Im at a loss, can anyone help please?

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2009-05-19 at 05:21:35ID24420522
Tags

batch files

Topics

MS DOS

,

Windows Batch Scripting

Participating Experts
2
Points
250
Comments
17

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. sfc /scannow runs every time at boot-up
    I ran sfc /scannow successfully under Windows XP Professional. However, now every time I boot up my computer, sfc /scannow attempts to run, and I have to cancel out of it. I disabled all startup items through msconfig, but sfc/scannow still ran. The program does not run under...
  2. sfc scannow starts, but closes after 1'
    story : cleanup of PC - cleaned all virus and malware; everything clean. when i run sfc /scannow from the run box, the window opens, but the scan does not begin; after 1-2 minutes the window closes. If i try to rerun the sfc /scannow, i see the black dos box pop up for a spli...
  3. sfc /scannow
    Hi, I need to double check on the function of sfc /scannow. The situation is as follows. On a 2000 server with sql one of the admin users have updated the mdac on it form 2.5 to 2.8. After he have done so they realised that one of their apps aren't functioning properly anymo...
  4. sfc /scannow
    Good Morning Experts: I have a problem that has seen a lot of mileage in this and other forums, but none of the suggested solutions I've tried have worked for me yet. When running sfc /scannow I am quickly prompted to load my WProf CD, (OEM from Toshiba) but get the message:...

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: QlemoPosted on 2009-05-19 at 07:43:19ID: 24422558

If you call sfc without start, does it wait? It does on my Vista PC.

 

by: HubasanPosted on 2009-05-19 at 09:07:28ID: 24423588

Hi ScumPuppy,

Unfortunately this will not work since SFC.exe , or Windows File Protection scan (in windows XP at least) is not running under SFC.exe but under different service.

SFC.exe just executes Winlogon.exe function that scans the files for Windows File Protection, so the result you see where START /WAIT command is not working is actually true since SFC.exe just executes the function and then closes immediately. Winlogon.exe is the process that actually shows you the Windows File Protection scan and progress screen. And you can't really wait for Winlogon to close in your batch file since this process is a core system process and is always on.

What you can use is this:

tasklist /FI "WINDOWTITLE eq Windows File Protection" | FIND "winlogon.exe"

Command above will look for a window title called "Windows File Protection" and will PIPE that command to FIND command that will look for "winlogon.exe" and if it DOESN'T find it, it will be at ERRORLEVEL 1

Example script below can demonstrate this:

Hope this helps :-)


@echo off
 
:check
CLS
ECHO Checking...
ping -n 2 127.0.0.1>nul
tasklist /FI "WINDOWTITLE eq Windows File Protection" | FIND "winlogon.exe"
IF ERRORLEVEL 1 GOTO :execute
goto :wait
 
:wait
CLS
ECHO Windows File Protection still running...
ECHO Waiting 5 seconds
ping -n 2 127.0.0.1>nul
CLS
ECHO Windows File Protection still running...
ECHO Waiting 4 second
ping -n 2 127.0.0.1>nul
CLS
ECHO Windows File Protection still running...
ECHO Waiting 3 seconds
ping -n 2 127.0.0.1>nul
CLS
ECHO Windows File Protection still running...
ECHO Waiting 2 seconds
ping -n 2 127.0.0.1>nul
CLS
ECHO Windows File Protection still running...
ECHO Waiting 1 second
ping -n 2 127.0.0.1>nul
goto :check
 
:execute
ECHO Executing command
 
goto :end
 
:end

                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:

Select allOpen in new window

 

by: QlemoPosted on 2009-05-19 at 09:52:46ID: 24424025

1. Using colon in goto is not recommended by MS. It does not harm, however.
2. the goto :wait is superfluous. No code between goto and the label
3. The wait part could be a bit compressed (see below)
4. I would check every second, and instead count up the wait time so you have visual feedback how long SFC went.

:wait
for /L %%C in (5,-1,0) do (
  CLS
  ECHO Windows File Protection still running...
  ECHO Waiting %%C seconds
  ping -n 2 127.0.0.1>nul
)
goto :check

                                              
1:
2:
3:
4:
5:
6:
7:
8:

Select allOpen in new window

 

by: ScumPuppyPosted on 2009-05-19 at 21:52:15ID: 24428696

Hubasan and Qlemo

Thanks for the comments, this sounds very promising.. I will try this when Im next back at work on friday and will update my findings on here :)

Sounds VERY promising :)

Thanks.. will get back to you both!!

 

by: ScumPuppyPosted on 2009-05-21 at 23:24:24ID: 24448095

Hi guys

Ive tried both versions and it still doesnt work. It runs sfc.exe but the batch file continues to progress whilst sfc is running.

To test its working Im putting a line after it like:

ECHO Test to see if its worked
pause

so if this is working it shouldnt say that line on the screen OR pause the batch and ask to 'press any key' to continue until after the sfc.exe utility  has finished running. unfortunately it goes straight to that point as soon as it starts running :(

any other ideas?

 

by: QlemoPosted on 2009-05-22 at 03:00:19ID: 24449203

It works for me, but I've a German system, so window title is not the same. Please execute the tasklist command alone
tasklist /FI "WINDOWTITLE eq Windows File Protection"  /v
while sfc runs, to see if the filter is correct.

 

by: QlemoPosted on 2009-05-22 at 03:06:51ID: 24449237

Additionally, I would prefer using this code

@echo off
 
:check
ECHO Checking...
ping -n 2 127.0.0.1>nul
set sec=1
tasklist /FI "WINDOWTITLE eq Windows File Protection" | FIND /i "winlogon.exe" >nul || goto execute
 
ECHO Windows File Protection still running...
ECHO Waiting %sec% seconds yet
set /A sec += 1
ping -n 2 127.0.0.1>nul
goto :check
                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:

Select allOpen in new window

 

by: ScumPuppyPosted on 2009-05-22 at 04:18:56ID: 24449611

when i run the tasklist on its own whilst sfc is running I get:

ERROR: not found

so when it works for you does the batch file stay open and not move to the next command until the sfc.exe progress bar has finished? Its not working for me :(

 

by: QlemoPosted on 2009-05-22 at 04:32:54ID: 24449702

This is more than strange. tasklist without anything is bringing a list of running processes, I hope? I can't sort that error message into any category I would know of:
- if tasklist would not be found, a message   command not found ...   would appear
- if tasklist would not found the filtered process, it outputs an INFORMATIONAL message, no ERROR.

 

by: ScumPuppyPosted on 2009-05-22 at 04:44:43ID: 24449759

I run sfc.exe /scannow

whilst its running i then type:

tasklist /FI "WINDOWTITLE eq Windows File protection" /v

The following appears directly under it:

ERROR: Not found

 

by: QlemoPosted on 2009-05-22 at 04:46:28ID: 24449769

Please try
tasklist
alone!

 

by: QlemoPosted on 2009-05-22 at 04:46:56ID: 24449773

And if that works,
tasklist /v
while sfc is running.

 

by: ScumPuppyPosted on 2009-05-22 at 05:03:10ID: 24449896

if i run sfc.exe /scannow and then type:

tasklist

I get:

ERROR: not found.

Rather than look for the window named Windows File Protection would it be an idea to look for the process of winlogon.exe?

I dunno.. Im scratching at straws :(

All I want it to do is not go to the next line down until the scan has finished, so if you are testing it can you put a pause at the end of everything and see if it gives you the pause once the scan has completed or if it gives it you straight away while the scan is in progress (as it does currently for me)?

thanks for your time by the way :)

 

by: QlemoPosted on 2009-05-22 at 05:08:38ID: 24449939

Are we talking about Windows XP here? Please try to search for tasklist.exe, it should be found in your windows\system32 folder.

And no, WinLogon is a process always running, it just opens a message box with the progress bar, and that window we have to catch. At the moment, I do not know of other means than tasklist to find the window from commandline.

 

by: ScumPuppyPosted on 2009-05-22 at 05:13:08ID: 24449972

Yes, sorry, I should have said, it is windows XP and yes tasklist.exe is present in sys32

 

by: QlemoPosted on 2009-05-22 at 05:14:52ID: 24449984

In this case you have serious trouble. It appears to me that some required DLLs are not working. Have a look into your EventLog if some errors report there.

 

by: ScumPuppyPosted on 2009-05-27 at 00:08:20ID: 31582953

Qlemo - legend, expert help, very fast, I was really pleased, thanks for your help :)

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...