Board logo

标题: [特效代码] 如何将变量追加到文本? [打印本页]

作者: raozhao2008    时间: 2008-10-26 11:57     标题: 如何将变量追加到文本?

  1. echo @echo off>1.bat
  2. echo if "%pass%"=="123" (goto open) else exit>>1.bat
复制代码
结果1.bat中的内容如下
  1. @echo off
  2. if ""=="123" (goto open) else exit
复制代码
请问该怎样达到以下效果
  1. @echo off
  2. if "%pass%"=="123" (goto open) else exit
复制代码

另外,
如果追加的文本很多,总不能老是echo 追加文本内容>>1.bat

[ 本帖最后由 raozhao2008 于 2008-10-26 12:02 编辑 ]
作者: batman    时间: 2008-10-26 12:05

  1. @echo off
  2. echo @echo off>1.bat
  3. echo if "%%pass%%"=="123" (goto open) else exit>>1.txt
复制代码

怎么又多了一问了?
作者: raozhao2008    时间: 2008-10-26 13:04     标题: 回复 2楼 的帖子

如果我要把以下内容都追加到1.bat,用echo                     >>1.bat。 岂不是很累啊
  1. @echo off
  2. color 0a
  3. set cishu=3
  4. ::定义最高尝试次数
  5. set mima=123
  6. ::定义密码
  7. set shijian=5
  8. ::定义超过尝试次数后多少秒后自动退出
  9. set times=%cishu%
  10. echo 请输入密码:
  11. echo 注:回车直接退出!!!
  12. set /p pass=
  13. goto kaishihou
  14. :kaishi
  15. set /p pass="请输入密码:"
  16. :kaishihou
  17. if %pass%=="" goto kaishi
  18. cls
  19. if %pass%==%mima% goto start
  20. set /a times=%times%-1
  21. if %times%==0 goto jieshu
  22. echo 对不起,密码错误!请重新输入!
  23. echo 还有%times%次机会
  24. goto kaishi
  25. :jieshu
  26. echo 对不起,你已连续输错密码%cishu%次!!!
  27. echo 程序将%shijian%秒后自动退出!!!
  28. ping -n %shijian% 127.0.0.1>nul
  29. :start
  30. md 123
  31. exit
复制代码

[ 本帖最后由 raozhao2008 于 2008-10-26 13:05 编辑 ]
作者: batman    时间: 2008-10-26 13:08

你直接在1.bat中写不就行了吗?何苦要转个弯呢?不解。。。
作者: Batcher    时间: 2008-10-26 15:26     标题: 回复 3楼 的帖子

在你学会用意念控制电脑之前,就先用这个方法吧^_^
作者: raozhao2008    时间: 2008-10-26 17:25     标题: 回复 5楼 的帖子

不懂,什么意思?
太深奥了
作者: pusofalse    时间: 2008-10-26 17:29     标题: 回复 6楼 的帖子

for是用来做什么的?~在每句前加同样的一句可是for的基础。。。
for /f "usebackq delims=" %%a in ("youbatfile") do @echo>>1.bat echo %%a
5楼的意思大概就是要让你先搜索。。。
作者: jellyhk    时间: 2008-10-26 20:41

直接写入吧!
嘿嘿!
作者: wxcute    时间: 2008-10-27 15:06     标题: 全部都要不如复制一份,哈哈开玩笑

生成findstr /v "○" "%~f0">2.bat
追加findstr /v "○" "%~f0">>2.bat
引号“”中放些个不用的特殊字符如〓←△
作者: Batcher    时间: 2008-10-27 16:11     标题: 回复 9楼 的帖子

直接type更方便吧?
作者: wxcute    时间: 2008-10-27 16:16

回复 10 楼
  新生成的文件中不含 findstr 这句。

  而 type 就真的完全是复制了。
作者: raozhao2008    时间: 2008-10-27 17:24     标题: 可以这样,但也有点问题

  1. (echo @echo off
  2. echo color 0a
  3. echo set cishu=3
  4. echo ::定义最高尝试次数
  5. echo set mima=123
  6. echo ::定义密码
  7. echo set shijian=5
  8. echo ::定义超过尝试次数后多少秒后自动退出
  9. echo set times=%cishu%
  10. echo echo 请输入密码:
  11. echo echo 注:回车直接退出!!!
  12. echo set /p pass=
  13. echo goto kaishihou
  14. echo :kaishi
  15. echo set /p pass="请输入密码:"
  16. echo :kaishihou
  17. echo if %pass%=="" goto kaishi
  18. echo cls
  19. echo if %pass%==%mima% goto start
  20. echo set /a times=%times%-1
  21. echo if %times%==0 goto jieshu
  22. echo echo 对不起,密码错误!请重新输入!
  23. echo echo 还有%times%次机会
  24. echo goto kaishi
  25. echo :jieshu
  26. echo echo 对不起,你已连续输错密码%cishu%次!!!
  27. echo echo 程序将%shijian%秒后自动退出!!!
  28. echo ping -n %shijian% 127.0.0.1>nul
  29. echo :start
  30. echo md 123
  31. echo exit ) >123.txt
复制代码

问题事
如果出现 &  字符,就不能把 &及本行以后的字符 追加至文本
作者: Batcher    时间: 2008-10-27 17:37     标题: 回复 12楼 的帖子

特殊字符需要用简括号进行转义
^&




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2