[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [己解决]请教精简批处理if代码

本帖最后由 keshun 于 2019-4-12 16:47 编辑

原条件己更新(6-32)
  1. for %%d in ( 6,7,8,9,10,11,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32 ) do if "%s%"=="%%d"  goto a
复制代码
请教精简代码,谢谢

ps:
  1. Switch -r ($k) {
  2. '1|2|4|8|10|12|14|16' { a; break }
  3. '3|5|6|7|9|11|13|15' { b;}
  4. }
复制代码

TOP

回复 2# xczxczxcz


    谢谢回复!!能不能直接用bat,不想转用ps,谢谢

TOP

回复 3# keshun

参考:
  1. @Echo Off
  2. set "k=5"
  3. for %%a in ( 1,2,4,8,10,12,14,16 ) do if "%k%"=="%%a" goto A
  4. for %%a in ( 3,5,6,7,9,11,13,15 ) do if "%k%"=="%%a" goto B
  5. :A
  6. echo "今天股市又升了点。很高兴!"
  7. pause & exit
  8. :B
  9. echo "天朝福彩专业诈取穹叼丝"
  10. pause & exit
复制代码

TOP

  1. for %%a in (1 2 4 8 10 12 14 16) do if /i "%k%" == "%%a" goto a
  2. for %%b in (3 5 6 7 9 11 13 15) do if /i "%k%" == "%%b" goto b
  3. pause
复制代码
智慧是,利用最简单的代码替代复杂事情的处理过程。
付款请扫头像二维码码,谢谢

TOP

本帖最后由 smss 于 2019-4-6 17:01 编辑
回复  keshun

参考:
xczxczxcz 发表于 2019-4-4 20:12


set /p Z=输入对应字符回车:
if not "%Z%"=="" set Z=%Z:~0,2%
if "%Z%"=="0" goto 0
if "%Z%"=="1" goto 1
if "%Z%"=="2" goto 2
if "%Z%"=="3" (set "Aa=视频"&goto 3)
if "%Z%"=="4" (set "Aa=电影"&goto 3)
if "%Z%"=="5" goto 5
if "%Z%"=="6" goto 6
if "%Z%"=="7" goto 7
if "%Z%"=="8" goto 8
if "%Z%"=="9" goto 9
if "%Z%"=="a" goto a
if "%Z%"=="b" goto b
if "%Z%"=="c" goto c
if "%Z%"=="d" goto d
if "%Z%"=="e" goto e
if "%Z%"=="f" goto f
if "%Z%"=="g" goto g
if "%Z%"=="h" goto h
if "%Z%"=="i" goto i
if "%Z%"=="j" goto j
echo 选择无效,请重新输入!
ping 0 -n "1">nul&goto Cho

这种呢 可以写成
set /p Z=输入对应字符回车:
精减成goto %Z% 但输入不存在的跳转时闪退 有没有精减又不闪退的方法

TOP

回复 6# smss
  1. @echo off
  2. :input
  3. set /p Z=输入对应字符回车:
  4. for %%i in (0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j) do (
  5.     if "%Z%" equ "%%i" (
  6.         goto :%%i
  7.     )
  8. )
  9. echo 选择无效,请重新输入!
  10. goto :input
  11. :0
  12. echo 0
  13. goto :eof
  14. :1
  15. echo 1
  16. goto :eof
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

一楼条件己更新,求代码??谢谢

TOP

回复 8# keshun
  1. for /l %%d in (6,1,32) do if "%s%"=="%%d" goto :%%d
复制代码
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表