How to Prevent Batch File from closing

Hi Experts

I have the following simple batch file to open MySQL client, prompt me for my password and allow me to use it.  under Win 7 this works and the client window stays open, but under my Win 2003 the client window closes, how can I prevent this?

echo Entering MySQL Client

C:\

cd Program Files\MySQL\MySQL Server 5.5\bin

mysql -u root -p

Open in new window

APD TorontoAsked:
Who is Participating?
 
Steve KnightConnect With a Mentor IT ConsultancyCommented:
Could it just be you are running it from the wrong place because it is a 32 bit program on a 64 bit Windows 7 and installed in a different directory?  Try one of these:

@echo off
echo Entering MySQL Client
cd /d "c:\Program Files (x86)\MySQL\MySQL Server 5.5\bin"
mysql -u root -p

Open in new window


or

@echo off
echo Entering MySQL Client
cd /d "c:\Program Files\MySQL\MySQL Server 5.5\bin"
mysql -u root -p

Steve
0
 
Dave BaldwinFixer of ProblemsCommented:
You want it to stay open as a 'cmd' window like a terminal?
0
 
APD TorontoAuthor Commented:
@Dave Baldwin

You want it to stay open as a 'cmd' window like a terminal?

Yes, exactly.
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
Dave BaldwinFixer of ProblemsCommented:
Try this.  You really don't need the second line.  But you probably need the quotes because the path has a space in it.
echo Entering MySQL Client

cd C:\

cd "C:\Program Files\MySQL\MySQL Server 5.5\bin"

mysql -u root -p

Open in new window

0
 
Steve KnightIT ConsultancyCommented:
Line #3 and #5 won't work if the batch file is run from a different drive - Line #3 will change the directory on the C: drive to \ but not change to that drive.  You either need
c:
cd "\program files.... etc."
or

cd /d "c:\program files ... etc."

Have you confirmed what happens if you open a cmd.exe window and type in the same commands?

Steve
0
 
APD TorontoAuthor Commented:
This worked... but how/why?

I thought it was a server setting?
0
 
Steve KnightIT ConsultancyCommented:
Almost like I'm invisible!
0
 
APD TorontoAuthor Commented:
@dragon, what was your question... sorry?
0
 
APD TorontoAuthor Commented:
I don't understandand still how it works, but it does
0
 
Steve KnightIT ConsultancyCommented:
Wel I wasn't expecting that outcome, thankyou.

Agreed with Bill, the " " aren't needed but I tend to add them anyway to save confusion.

I can only assume you are maybe running this from a differemt driver perhaps which is why it failed.  If you want to see, try this.

@echo off
echo Driveis currently %cdF
dir mqsql*.*
pause
cd "\program files\etc.."
echo %cd%
dir msql*.*
pause

etc. using your full cd command.... this sort of debugging always useful, the echo %cd% will show you what drive and directory it thinks is current when you are at that point.  the dir command will look for anything called mysql it can run in that dir, and pause commands waits so you can see the issue.

if you take your original batch and add pause to the end, with echo %CD% before you will probably see it is not in the mqsql directory or other errors.

Steve
0
 
Dave BaldwinFixer of ProblemsCommented:
When I ran the batch file on my XP system (which is very similar to Server 2003), it did not like the formatting of some of the lines.  But it does run now without the quotes.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.