2017-09-13 106 views
0
@echo off 

set /P user= Enter number: 
echo You have entered %user% 

if %user% 

(

start "C:\Program Files\Mozilla Firefox\firefox.exe" 

) 

else if %user% 

(

start "C:\Program Files\google chrome\chrome.exe" 

) 

else 

Pause 
+0

解释你的问题多一点,你会得到什么样的错误,你想要达到什么目的。 –

+0

代码中的if else语句无法得到执行 – Lynus

+0

acrtually我想使一批来自哪个用户可以选择e.g如果用户选择1,firefox.exe启动内部批处理程序;并且如果用户选择2 chrome得到执行等等。 – Lynus

回答

0

下面的代码让用户选择他们是否想要为Firefox选择y以打开Chrome或Firefox和程序里面的N代表铬,您可以更改输入到1或2或者你喜欢什么。

检查你的路是正确的.EXE文件

(路径是在我的电脑上不同)

@echo off 
set user= 
set /P user=Type input y/n: %=% 

pause 


if "%user%" == "y" goto mozzila 
if "%user%" == "n" goto chrome 

:mozzila 
cd C:\Program Files\Mozilla Firefox\ 
firefox.exe 
:chrome 
cd C:\Program Files\google chrome\ 
chrome.exe 


Pause 
+0

不,先生其不工作,如果我输入Y都计划得到执行 – Lynus

+0

我有一个错字,我现在编辑我的答案尝试 –

1

你可以做这样一个菜单:

@Echo OFF 
Mode 60,12 & color 9E 
Title Start and open a Program 
:MENU 
CLS 
ECHO. 
ECHO  ===================================================== 
ECHO  PRESS 1, 2 OR 3 to select your task, or 4 to EXIT. 
ECHO  ===================================================== 
ECHO. 
ECHO  1 - Open Firefox 
ECHO  2 - Open Chrome 
ECHO  3 - Open Internet Explorer 
ECHO  4 - EXIT 
ECHO. 
SET /P "user=Type 1, 2, 3, or 4 then press ENTER : " 
IF "%user%"=="1" GOTO Firefox 
IF "%user%"=="2" GOTO Chrome 
IF "%user%"=="3" GOTO Internet Explorer 
IF "%user%"=="4" GOTO EOF 
GOTO MENU 

:Firefox 
start "" "Firefox.exe" 
GOTO MENU 
:Chrome 
start "" "chrome.exe 
GOTO MENU 
:Internet Explorer 
Start "" "iexplore.exe" 
GOTO MENU 
+0

的作品,谢谢你,u能请给我解释一下这段代码 – Lynus

+0

@Lynus [我应该怎么办当有人回答我的问题?(https://stackoverflow.com/help/someone-answers) – Hackoo

0

你也可以使用选择命令:

@Echo Off 
Echo 1. Firefox 
Echo 2. Chrome 
Echo 3. Internet Explorer 
Choice /C 123 /M "Please make your choice" 
If ErrorLevel 3 (Set "BEP=Internet Explorer\iexplore.exe" 
) Else If ErrorLevel 2 (Set "BEP=Google Chrome\chrome.exe" 
) Else Set "BEP=Mozilla Firefox\firefox.exe" 
If Exist "%ProgramFiles%\%BEP%" Start "" "%ProgramFiles%\%BEP%" 
+0

请注意,如果'1'的errorlevel'指一个或higher',因此如果您输入'3',所有你'设置'命令被执行,导致无论您输入什么,每次都会启动firefox *。我建议使用'if%errorlevel%== ...'来代替。 – Stephan

+0

更改,谢谢。 – Compo

0

我希望当用户输入1个中的第一个节目是执行问题得以解决

@echo on 

set /P user=Enter number: 

echo You have entered %user% 

IF /i "%user%" == "1" goto 1 
IF /i "%user%" == "2" goto 2 

:1 
cd "C:\Program Files\Mozilla Firefox" 
start firefox.exe 
exit 

:2 
cd "C:\Program Files\google chrome" 
start chrome.exe 
exit 

2时,第二

+0

它的作品谢谢你 – Lynus

0

的“IF ... ELSE ...”是正确的格式:

IF %user% (

    start "C:\Program Files\Mozilla Firefox\firefox.exe" 

) ELSE ( 
    IF %user% (
    start "C:\Program Files\google chrome\chrome.exe" 
    ) ELSE (sth.) 
) 

ELSE必须在同一行中使用圆括号。