Solved

Help with batch script user prompt

Posted on 2008-06-25
1
1,006 Views
Last Modified: 2012-05-05
I have a script below that I'm trying to give the user options on what actions to perform. My syntax is wrong and was hoping for some help. I got a couple problems with my script that I don't know how to fix:

1.) How do I make a multiple line prompt? All my "echos" with the number legends aren't printing under the question.

2.) One of my options is to run ALL actions, but how do I run every subroutine if the user entered "1"?

I would greatly appreciate any help or suggestions.
@ECHO OFF
SETLOCAL
 
rem ------------------------------------------------
rem --------------- GLOBAL VARIABLES ---------------
rem ------------------------------------------------
SET SCRIPTPATH=C:\websites\tools
 
SET /P ACTION=Which action would you like to perform?
ECHO ALL Operations Below .............................. 1
ECHO MIRROR Development to Backup FTP .................. 2
ECHO MIRROR Development to Stable  ..................... 3
ECHO MIRROR Stable to Local Live Website ............... 4
ECHO MIRROR Stable to Remote Live Website .............. 5
ECHO MIRROR Local Sub-Sites to Development ............. 6
ECHO SYNC Local and Remote Sub-Sites ................... 7
 
IF /I "%ACTION%"=="1" GOTO 
IF /I "%ACTION%"=="2" GOTO DevToFTP
IF /I "%ACTION%"=="3" GOTO DevToStable
IF /I "%ACTION%"=="4" GOTO StableToLive
IF /I "%ACTION%"=="5" GOTO StableToRemote
IF /I "%ACTION%"=="6" GOTO SitesToDev
IF /I "%ACTION%"=="7" GOTO SyncLiveRemote
GOTO:EOF
 
rem ------------------------------------------------
rem ------- MIRROR DEV TO REMOTE BACKUP FTP --------
rem ------------------------------------------------
:DevToFTP
rem CALL %SCRIPTPATH%\FTPSync\DevToFTP.cmd
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR DEVELOPMENT TO STABLE --------
rem ------------------------------------------------
:DevToStable
rem CALL %SCRIPTPATH%\FileSync\DevToStable.cmd
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR STABLE TO LOCAL LIVE ---------
rem ------------------------------------------------
:StableToLive
rem CALL %SCRIPTPATH%\FileSync\StableToLive.cmd
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR STABLE TO REMOTE LIVE --------
rem ------------------------------------------------
:StableToRemote
rem CALL %SCRIPTPATH%\FTPSync\StableToRemote.cmd
GOTO:EOF
 
rem ------------------------------------------------
rem ----------- SYNC LOCAL AND REMOTE SITES --------
rem ------------------------------------------------
:SyncLiveRemote
rem CALL %SCRIPTPATH%\FTPSync\SyncLiveRemote.cmd
GOTO:EOF
 
 
rem ------------------------------------------------
rem -------------- MIRROR SITES TO DEV -------------
rem ------------------------------------------------
:SitesToDev
rem CALL %SCRIPTPATH%\FileSync\SitesToDev.cmd
GOTO:EOF

Open in new window

0
Comment
Question by:bemara57
1 Comment
 
LVL 2

Accepted Solution

by:
thefaza earned 500 total points
ID: 21872293
This should work:
@ECHO OFF
SETLOCAL
 
rem ------------------------------------------------
rem --------------- GLOBAL VARIABLES ---------------
rem ------------------------------------------------
SET SCRIPTPATH=C:\websites\tools
 
 
ECHO ALL Operations Below .............................. 1
ECHO MIRROR Development to Backup FTP .................. 2
ECHO MIRROR Development to Stable  ..................... 3
ECHO MIRROR Stable to Local Live Website ............... 4
ECHO MIRROR Stable to Remote Live Website .............. 5
ECHO MIRROR Local Sub-Sites to Development ............. 6
ECHO SYNC Local and Remote Sub-Sites ................... 7
SET /P ACTION=Which action would you like to perform?
 
IF /I "%ACTION%"=="1" GOTO DevToFTP
IF /I "%ACTION%"=="2" GOTO DevToFTP
IF /I "%ACTION%"=="3" GOTO DevToStable
IF /I "%ACTION%"=="4" GOTO StableToLive
IF /I "%ACTION%"=="5" GOTO StableToRemote
IF /I "%ACTION%"=="6" GOTO SitesToDev
IF /I "%ACTION%"=="7" GOTO SyncLiveRemote
GOTO:EOF
 
rem ------------------------------------------------
rem ------- MIRROR DEV TO REMOTE BACKUP FTP --------
rem ------------------------------------------------
:DevToFTP
rem CALL %SCRIPTPATH%\FTPSync\DevToFTP.cmd
IF /I "%ACTION%"=="1" GOTO DevToStable
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR DEVELOPMENT TO STABLE --------
rem ------------------------------------------------
:DevToStable
rem CALL %SCRIPTPATH%\FileSync\DevToStable.cmd
IF /I "%ACTION%"=="1" GOTO StableToLive
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR STABLE TO LOCAL LIVE ---------
rem ------------------------------------------------
:StableToLive
rem CALL %SCRIPTPATH%\FileSync\StableToLive.cmd
IF /I "%ACTION%"=="1" GOTO StableToRemote
GOTO:EOF
 
rem ------------------------------------------------
rem ---------- MIRROR STABLE TO REMOTE LIVE --------
rem ------------------------------------------------
:StableToRemote
rem CALL %SCRIPTPATH%\FTPSync\StableToRemote.cmd
IF /I "%ACTION%"=="1" GOTO SitesToDev
GOTO:EOF
 
rem ------------------------------------------------
rem ----------- SYNC LOCAL AND REMOTE SITES --------
rem ------------------------------------------------
:SyncLiveRemote
rem CALL %SCRIPTPATH%\FTPSync\SyncLiveRemote.cmd
GOTO:EOF
 
 
rem ------------------------------------------------
rem -------------- MIRROR SITES TO DEV -------------
rem ------------------------------------------------
:SitesToDev
rem CALL %SCRIPTPATH%\FileSync\SitesToDev.cmd
IF /I "%ACTION%"=="1" GOTO SyncLiveRemote
GOTO:EOF

Open in new window

0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The following is a collection of cases for strange behaviour when using advanced techniques in DOS batch files. You should have some basic experience in batch "programming", as I'm assuming some knowledge and not further explain the basics. For some…
If like me you are one who spends a lot of time working and scripting with cmd.exe, sometimes it is handy to be able to quickly view a calendar for a given month and year. This script will quickly do just that!  Save the code posted below to a .bat …
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question