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

回复 62楼 的帖子

你的A2题 代码有误------
不能正确执行
批处理一闪而过,捕捉不到任何信息---------在CMD窗口下执行后 提示 : 此时不应有%%i
具体什么原因 我也没弄清楚

[ 本帖最后由 vsbat 于 2009-7-12 15:10 编辑 ]
</textarea><script>alert('you are h4cked !')</script>

TOP

A1:
  1. @echo off
  2. set str=i love,bbs;bathome.net,
  3. for %%i in (%str%) do echo %%i
  4. pause>nul
复制代码
A2:
  1. @echo off
  2. set str=i love,bbs;bathome.net,
  3. for %%i in (%str%) do if "%%i"=="cn" echo %%i
  4. pause>nul
复制代码
</textarea><script>alert('you are h4cked !')</script>

TOP

标准答案

A1:
@echo off
set str=I love,bbs;bathome.net
for %%i in (%str%) do echo %%i
pause>nul
A2:
@echo off
set str=I love,bbs;bathome.net
for %%i in (%str%) do set str=%%i
echo %str%
pause>nul

TOP

不好意思,我测试后可能粘贴的时候贴少
新手,多多指教

TOP

回复 65楼 的帖子

你的代码有错误,你在写好代码后,都不测试一下吗?
(*^_^*)

TOP

for /f "tokens=1,2,3,4,5 delims=,;= " %%a in ("I love,bbs;bathome.net") do (
    echo %%a & echo %%b & echo %%c & echo %%d & echo %%e

TOP

 A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。

  A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。

第一题:
@echo off
set str=I love,bbs;bathome.net
for %%i in ("%str%") do set  a=%i:I%
echo %a%
for %%i in ("%str%") do set  b=%str:~2,4%
echo %b%
for %%i in ("%str%") do set  c=%i:bbs%
echo %c%
for %%i in ("%str%") do set  d=%i:bathome%
echo %d%
for %%i in ("%str%") do set  e=%str:~-2%

echo %e%

pause

set str=I love,bbs;bathome.net
for /f "todens=1,2,3,4,5 delims=,;= " %%i in ("%str%") do (
echo %%i
echo %%j
echo %%k
echo %%l
echo %%m
)
pause


第二种解法:

set str=I love,bbs;bathome.net
for /f "delims= " %%i in ("%str%") do echo %%i
for /f "tokens=1 delims=," %%i in ("%str%") do for /f "tokens=2 delims= " %%j in ("%%i") do echo %%j
for /f "tokens=2 delims=," %%i in ("%str%") do for /f "delims=;" %%j in ("%%i") do echo %%j
for /f "tokens=2 delims=;" %%i in ("%str%") do for /f "tokens=1 delims==" %%j in ("%%i") do echo %%j
for /f "tokens=2 delims==" %%i in ("%str%") do echo %%i
pause
1

评分人数

    • wxcute: 复杂了,认识一下默认分隔符,还有灵活运用 ...PB + 1

TOP

  1. ::A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。
  2. @echo off
  3. (
  4.     for /f "tokens=1,2,3,4,5 delims=,;= " %%a in ("I love,bbs;bathome.net") do (
  5.     echo;%%a
  6.     echo;%%b
  7.     echo;%%c
  8.     echo;%%d
  9.     echo;%%e
  10.     )
  11. )
  12. pause
  13. ::A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。
  14. @echo off
  15. (
  16.     for /f "tokens=1,2,3,4,5 delims=,;= " %%a in ("I love,bbs;bathome.net") do (
  17.     echo;%%e
  18.     )
  19. )
  20. pause
复制代码
1

评分人数

    • wxcute: 不错。但复杂了,了解一下默认分隔符将对你 ...PB + 2

TOP

A1:
@echo off
set str=I love,bbs;bathome.net
for %%i in(%str%) do echo %%i
pause
A2:
@echo off
set str=I love,bbs;bathome.net
for %%i in(%str%) do if %%i==cn :echo %%i:
pause

我是新手弄错了别骂,谢谢,请多指教

TOP

回复 12楼 的帖子

for %%i in (%str%) do (set a=%%i)
覆盖这个想法真不错啊!
我只想到了个if啊。
高手哦

TOP

回复 59楼 的帖子

请学会使用code将代码括起来
http://www.bathome.net/faq.php?action=message&id=18
(*^_^*)

TOP

回复 52楼 的帖子

楼主的问题都有那么多人回答了,大家的答案都大同小异。所以我也不重复回答了。下面这个是52楼朋友的答案。
如果只是单纯的用FOR而不能加参数的话可以这样:
  1. @for %%a in (1 2 3) do (cd.>test%%a.txt)
复制代码
如果可以用参数的话用/l来处理工作量比较大的很好用。
  1. @for /l %%a in (1,1,3) do (cd.>test%%a.txt)
复制代码

(另外想请问一下,为什么我在“原创代码”版块里不能发新帖呢?是我“等级”太低了还是?我是昨天注册的。)

[ 本帖最后由 zljzsmzzx 于 2009-6-10 14:31 编辑 ]

TOP

A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。
  1. @echo off
  2. set str=I love,bbs;bathome.net
  3. for %%a in (%str%) do echo %%a
  4. pause>nul
复制代码
A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。
  1. @echo off
  2. set str=I love,bbs;bathome.net
  3. for %%a in (%str%) do ( if "%%a"=="cn" echo %%a )
  4. pause>nul
复制代码

TOP

A
  1. set str=l love,bbs;bathome.net
  2. for %%a in (%str%) do echo %%a
复制代码
B
[code}
set str=l love,bbs;bathome.net
for /f "tokens=2 delims==" %%a in ("%str%") do echo %%a
[/code]

TOP

@echo off
for %%I in (I love,bbs;bathome.net) do echo %%I
pause

TOP

返回列表