中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-09 19:05
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 新手求简单bat:根据用户输入运行相应代码 查看 892 回复 8
楼 主 新手求简单bat:根据用户输入运行相应代码 发表于 2008-09-22 22:49 ·  中国 北京 联通
初级用户
积分 28
发帖 12
注册 2008-09-22 22:21
17年会员
UID 126341
性别 男
状态 离线
第一次编bat , 不知哪不对 TT
大概是按键盘输入copy相应文件的意思

请指点指点,谢谢大家~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

@echo off
echo.
echo.
echo ===============================================================
echo.
echo ***********拷哪个文件,请选择选项(任意键或1,2,3,0)***********
echo.
echo 任意键=所有文件
echo.
echo 1=1号文件
echo.
echo 2=2号文件
echo.
echo 3=3号文件
echo.
echo.
echo 0=按错了,我想出去~
echo.
echo ================================================================
echo.
set /p choice=请输入选项代码:
if "%source%"=="" goto :suoyou
if "%source%"=="1" goto :1
if "%source%"=="2" goto :2
if "%source%"=="3" goto :3
if "%source%"=="0" exit

:suoyou
C:\WINDOWS\system32\xcopy d:\temp\*.* /e /h d:\temp1 /y

:1
C:\WINDOWS\system32\xcopy d:\temp\1.bat d:\temp1 /y
exit

:2
C:\WINDOWS\system32\xcopy d:\temp\2.bat d:\temp1 /y
exit

:3
C:\WINDOWS\system32\xcopy d:\temp\3.bat d:\temp1 /y
exit


~~~~~~~~~~~~~~~~~~~~~~~~~

另外:设置背景颜色甚至图案怎么做到?

谢谢 谢谢~

───────────────── 版务记录 ─────────────────
执行:HAT
操作:在帖子标题中增加搜索关键字;代码加code标签
说明:原标题"新手求简单bat"不利于论坛搜索
处罚:因属论坛新人,不予积分处罚
提示:请访问 {7326}论坛新手必读,所有人的基本行为准则
───────────────── 版务记录 ─────────────────


[ Last edited by HAT on 2008-9-24 at 09:19 PM ]
2 发表于 2008-09-22 23:08 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
color a0
echo.
echo.
echo ===============================================================
echo.
echo ***********拷哪个文件,请选择选项(任意键或1,2,3,0)***********
echo.
echo 任意键=所有文件
echo.
echo 1=1号文件
echo.
echo 2=2号文件
echo.
echo 3=3号文件
echo.
echo.
echo 0=按错了,我想出去~
echo.
echo ================================================================
echo.
set /p choice=请输入选项代码:
if "%choice%"=="" (
xcopy /e /h /y "d:\temp\*.*" "d:\temp1"
) else if %choice%==1 (
xcopy /y "d:\temp\1.bat" "d:\temp1"
exit
) else if %choice%==2 (
xcopy /y "d:\temp\2.bat" "d:\temp1"
exit
) else if %choice%==3 (
xcopy /y "d:\temp\3.bat" "d:\temp1"
exit
) else if %choice%==0 (
exit
)
3 发表于 2008-09-22 23:15 ·  中国 上海 金山区 电信
新手上路
bat小兵
积分 8
发帖 4
注册 2008-03-06 22:07
18年会员
UID 112239
性别 男
状态 离线
错误出在定义的标签的位置,批处理是按顺序执行的
4 发表于 2008-09-22 23:22 ·  中国 北京 联通
初级用户
积分 28
发帖 12
注册 2008-09-22 22:21
17年会员
UID 126341
性别 男
状态 离线
谢谢!
明白颜色了!

但是按任意键copy所有文件好象不行~

而且,我没说明白---是按任意键无需回车就直接拷贝

呵呵
5 发表于 2008-09-22 23:23 ·  中国 北京 联通
初级用户
积分 28
发帖 12
注册 2008-09-22 22:21
17年会员
UID 126341
性别 男
状态 离线
Originally posted by vicp7764 at 2008-9-22 11:15 PM:
错误出在定义的标签的位置,批处理是按顺序执行的


不太明白~

那goto是怎么用的?

呵呵 编这个文件不是为了用,是为了学习的~
6 Re 4楼 发表于 2008-09-22 23:26 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
批处理本身无法做到“接收任意按键”
7 发表于 2008-09-22 23:33 ·  中国 北京 联通
初级用户
积分 28
发帖 12
注册 2008-09-22 22:21
17年会员
UID 126341
性别 男
状态 离线
哦~

那 if "%choice%"=="" (
xcopy /e /h /y "d:\temp\*.*" "d:\temp1"

是什么意思?
不能按任意键copy*.* ?

呵呵

[ Last edited by iiorii on 2008-9-22 at 11:36 PM ]
8 Re 7楼 发表于 2008-09-22 23:38 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
color a0
echo.
echo.
echo ===============================================================
echo.
echo ***********拷哪个文件,请选择选项(任意键或1,2,3,0)***********
echo.
echo 任意键=所有文件
echo.
echo 1=1号文件
echo.
echo 2=2号文件
echo.
echo 3=3号文件
echo.
echo.
echo 0=按错了,我想出去~
echo.
echo ================================================================
echo.
set /p choice=请输入选项代码:
if %choice%==1 (
xcopy /y "d:\temp\1.bat" "d:\temp1"
) else if %choice%==2 (
xcopy /y "d:\temp\2.bat" "d:\temp1"
) else if %choice%==3 (
xcopy /y "d:\temp\3.bat" "d:\temp1"
) else if %choice%==0 (
exit
) else (
xcopy /e /h /y "d:\temp\*.*" "d:\temp1"
)
9 发表于 2008-09-22 23:41 ·  中国 北京 联通
初级用户
积分 28
发帖 12
注册 2008-09-22 22:21
17年会员
UID 126341
性别 男
状态 离线
哦~

就是不能通过”按任意键满足条件“” 是这意思吧?

那 如果用”goto“怎么编?
论坛跳转: