Board logo

标题: 如何不等待执行下一个命令? [打印本页]

作者: 6233nokia     时间: 2006-10-14 22:58    标题: 如何不等待执行下一个命令?
谢谢。之前的问题已经解决,
现在新的问题:::::
现在有新问题来了,

假设有文件在移动硬盘里面,他们分别路径是在
h:\lin\Jcb_zszq\TdxW.exe
h:\lin\DZH5\internet\hypwise.exe
h:\lin\UC\uc.exe
h:\lin\同花顺妙手回春至尊版\hexin.exe
h:\lin\QQ+TM\CoralQQ.exe

我把编辑(内容如下)好的文件a.bat,
.\Jcb_zszq\TdxW.exe
.\DZH5\internet\hypwise.exe
.\UC\uc.exe
.\同花顺妙手回春至尊版\hexin.exe
.\QQ+TM\CoralQQ.exe

我把编辑好的文件a.bat放在h:\lin目录里面,当执行a.bat命令后
要启动下个程序就必须就要关闭上面刚打开的程序,要怎样才能启动完立刻启动下一个程序(也就是不用在等待上面那个程序关闭)?
简单说就是 如何不等待执行下一个命令?

有强人或者更厉害的方法请加我qq:103794136。 thx


以前的问题:
在windows环境里面 ,如何用批处理文件启动多个widows下才能启动的命令?

我用移动硬盘,每到另一部新电脑盘符都变动不同,改了盘符快捷方式就无效了,所以希望批处理命令可以帮到我。

例如在本来在h:\tuzi\ms2000.exe
我换一部新电脑可能就换成i盘符了 i:\tuzi\ms2000.exe
我希望不管去那部新电脑只要执行偏的bat命令就可以全部执行,而且不用在乎盘符的变动
例如,我想在a.bat里面加入以下命令,(我吧这个命令文件放在c盘,)希望能一次启动这些程序

.WINDOWS\system32\notepad.exe
.\tuzi\ms2000.exe

一个是记事本,一个是兔子程序。
我双击a.bat文件想同时启动上面两个命令?如何能实现


回版务记录的话:
因标题过于模糊??我现在改的这个应该可以了吗。其他我改过了。

──────────────── 版务记录 ────────────────
执行:namejm
原标题:望批处理命令可以帮到我
说明:因标题过于模糊,不便于论坛的搜索和管理,请在三日内修改标题。
  另外,请勿用大号字体发长帖,以免浪费系统资源。
提示:修改标题请在当前帖的右下脚点 编辑修改完毕之后按 编辑帖子 即可。
处罚:因属论坛新人,暂时不予处罚;若三日之后尚未修改标题,将扣除4点积分,
以示惩罚,并由版主强制修改标题。请点击
这里阅读论坛发帖规定,以避免在
今后的讨论中违规发帖。
──────────────── 版务记录 ────────────────


Last edited by 6233nokia on 2006-10-15 at 19:26 ]

作者: fastslz     时间: 2006-10-14 23:49
%WINDIR%\system32\notepad.exe
%~dp1\tuzi\ms2000.exe

作者: 6233nokia     时间: 2006-10-15 00:29
谢谢。我试试

作者: qq82015930     时间: 2006-10-15 04:10
支持,学习

作者: lxmxn     时间: 2006-10-15 06:04

  楼上几个朋友误解了楼主的意思了吧?
 
  他的意思可能是每次执行c盘里面的a.bat文件,都可以执行记事本和移动硬盘里面的兔子吧?

作者: 不得不爱     时间: 2006-10-15 11:04
START notepad.exe
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO START %%I:\tuzi\ms2000.exe

作者: 6233nokia     时间: 2006-10-15 18:33
notepad.exe可以,第2个不行

作者: 6233nokia     时间: 2006-10-15 19:28
Originally posted by lxmxn at 2006-10-15 06:04:

  楼上几个朋友误解了楼主的意思了吧?
 
  他的意思可能是每次执行c盘里面的a.bat文件,都可以执行记事本和移动硬盘里面皠...

谢谢。
上面的问题已经解决,现在有新问题来了,
请看最上面

作者: 6233nokia     时间: 2006-10-15 19:28
Originally posted by qwe1234567 at 2006-10-15 11:04:
START notepad.exe
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO START %%I:\tuzi\ms2000.exe



FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) 这个是什么意思?看不懂。呵呵

作者: redtek     时间: 2006-10-15 20:40
通过for命令枚举括号中的C-Z的盘符字母,
然后通过do命令来依次执行: 由start加载由%%I提供盘符的系列执行命令

你可以试着这样练习着看:
这样FOR的系列执行所达到的效果(ECHO只显示不执行)就会显示出来,
就明白什么意思了:)

@ECHO OFF
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO ECHO %%I:\tuzi\ms2000.exe




FOR关联了很多知识点(循环、枚举、执行等)。
所以,FOR /? 是它的帮助信息,一边看帮助信息一边想一边照着帮助上的例子做,
从简单的做,


) 从现在开始:用2个小时做完FOR基本练习,然后就越来越了解了和会应用了:)

Last edited by qwe1234567 on 2006-10-15 at 21:01 ]

作者: 不得不爱     时间: 2006-10-15 20:41
Originally posted by 6233nokia at 2006-10-15 19:28:
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) 这个是什么意思?看不懂。呵呵

就是依次序用设置%%I为C D E F G H I G K L M N O P Q R S T U V W X Y Z
对一组文件中的每一个文件执行某个特定命令。

FOR %variable IN (set) DO command

%variable 指定可替换的参数。
(set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters
对特定命令所指定的参数。

在批处理文件中使用 FOR 命令时, 指定变量请使用 %%variable
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.

作者: redtek     时间: 2006-10-15 20:50
如果在dos命令行上直接执行命令(而不是存在批处理.bat文件内执行命令),
那么写在批处理文件内的 %%i 这个双百分号可以写成一个 %百分号就行了,
如 %i 或 %a 等……

你试着这样练习(练习前先看 FOR /? 的帮助)
开两个DOS命窗口,一个是 FOR帮助信息,另一个练习用

) 先熟悉多数dos内部命令和一些它们的简单参数。

) 熟悉 SET 和 简单的赋值

) 再开始编写批处理文件

) 再研究高级的 FOR与 if 等操作,这样才不会走弯路。

)) 如果一步走得太快了(学习速度太快了),如果直接就开始编批处理和fox
   等一些比较难的含知识点非常多的批处理脚本,
   很有可能一段时间以后自己还要回到最基本的基础那里从新学过……

   底层的最基础的DOS命令和一些环境变量的知识可以帮助你完成更复杂更想要的功能,
   并且熟悉了之后可以随心所欲,就象版主一样的神起来~:)

Last edited by qwe1234567 on 2006-10-15 at 21:02 ]

作者: 不得不爱     时间: 2006-10-15 20:56
@echo off
START Jcb_zszq\TdxW.exe
START DZH5\internet\hypwise.exe
START UC\uc.exe
START 同花顺妙手回春至尊版\hexin.exe
START QQ+TM\CoralQQ.exe

作者: redtek     时间: 2006-10-15 20:56
Originally posted by 6233nokia at 2006-10-15 19:28:



FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) 这个是什么意思?看不懂。呵呵



不行,这样太慢了~:)
你从现在开始学习帮助和看 SET环境变量和赋值(看帮助),再练习fox

然后一直练到中午吃饭的时候,如果练不完中午不许吃饭!
从现在开始 8:51分 ,必须练习到中午12点,练不完不能吃饭~:)
然后每隔15分钟报告你的进度和学习情况!!!(一定要!)

我就不信到中午的时候你不能精通了它们~!:~:)

(现在给你加2分表示对你学习的鼓励!!!加油!)

Last edited by redtek on 2006-10-15 at 20:57 ]

作者: 6233nokia     时间: 2006-10-15 21:01
Originally posted by qwe1234567 at 2006-10-15 20:56:
@echo off
START Jcb_zszq\TdxW.exe
START DZH5\internet\hypwise.exe
START UC\uc.exe
START 同花顺妙手回春至尊版\hexin.exe
START QQ+TM\CoralQQ.exe


谢谢老大。。。。正解。。。。总算搞定了。哈哈哈 抱一个。

作者: 不得不爱     时间: 2006-10-15 21:07
redtek:
不好意思,你把FOR打成了FOX了,我替你修改了10,12楼的帖子。

作者: fastslz     时间: 2006-10-15 21:10

@echo off
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO if exist %%I:\lin\nul set lin=%%I:\lin
START %lin%\Jcb_zszq\TdxW.exe
START %lin%\DZH5\internet\hypwise.exe
START %lin%\UC\uc.exe
START %lin%\同花顺妙手回春至尊版\hexin.exe
START %lin%\QQ+TM\CoralQQ.exe

作者: weilong888     时间: 2006-10-15 21:32
这START命令,只有CMD才有吧,看了一下START/?,得好好学一下。

作者: 6233nokia     时间: 2006-10-17 19:34
Originally posted by fastslz at 2006-10-15 21:10:

@echo off
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO if exist %%I:\lin\nul set lin=%%I:\lin
START %lin%\Jcb_zszq\TdxW.exe
START %lin%\DZH5\internet\hypwise.exe
STAR ...


谢谢。好用多了。 但是
START %lin%\DZH5\internet\hypwise.exe
这个命令不能启动程序(或者说没反应),可是我进目录里面用鼠标双击就可以打开?? 换了这个目录里面的其他所有*.exe文件都不行。如下图
附件 1: lin- 2006-10-17 7.21.12 Num.jpg (2006-10-17 19:34, 72.82 KiB, 下载附件所需积分 1点 ,下载次数: 2)



作者: 不得不爱     时间: 2006-10-18 03:38
看下这个:
@echo off
FOR %%I IN (C D E F G H I G K L M N O P Q R S T U V W X Y Z) DO if exist %%I:\lin\nul PATH=%%I:\lin\Jcb_zszq;%%I:\lin\DZH5\internet;%%I:\lin\同花顺妙手回春至尊版;%%I:\lin\QQ+TM;%PATH%
START TdxW.exe
START hypwise.exe
START uc.exe
START hexin.exe
START CoralQQ.exe

作者: 31676201     时间: 2006-12-4 11:51
DOS,代表着自由开放与发展,我们努力起來,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!