中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 大家帮我看一下这个批处理文件
作者:
标题: 大家帮我看一下这个批处理文件 上一主题 | 下一主题
oceanwind
初级用户




积分 136
发帖 12
注册 2004-1-25
状态 离线
『楼 主』:  大家帮我看一下这个批处理文件

这里有一个批处理文件.对它不理解.对SHIFT以及参数不理解.
REM MYCOPY.BAT copies any number of
REM files to a directory. The command
REM is MYCOPY DIR FILES

SET TODIR=%1
:ONE
SHIFT
IF"%1"=" "GOTO TWO
COPY %1 %TODIR%
GOTO ONE
:TWO
SET TODIR=
ECHO ALL DONE

以上谢谢

2006-1-31 12:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lks205
初级用户





积分 86
发帖 32
注册 2006-1-27
状态 离线
『第 2 楼』:  

本人正想学习,楼上这位兄台,能否传一个SHIFT程序给我,本人正想学习学习,谢谢。
lks205#163.com (请把#换成@)

2006-1-31 14:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
oceanwind
初级用户




积分 136
发帖 12
注册 2004-1-25
状态 离线
『第 3 楼』:  

已回复,谢谢

2006-1-31 16:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 4 楼』:  

Shift的作用是把命令行参数向前推移,即 %2 变为 %3, %2 变为 %1,如此类推。



----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2006-1-31 18:19
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
lks205
初级用户





积分 86
发帖 32
注册 2006-1-27
状态 离线
『第 5 楼』:  奇怪!没收到,能否请楼主再发一次?

SHIFT


  改变批处理程序中可替换参数的位置。

  

  语法

  
  SHIFT

  SHIFT─注解

  SHIFT命令如何工作

  SHIFT命令通过将每一个参数拷贝到前一个参数来改变可替换参数%0到%9的值。也就是%1的值被拷贝到%0,%2的值被拷贝到%1等等。此命令对用一系列参数完成同样操作的批处理文件很有用。

  

  :m567

  使用10个以上的命令行参数

  

  使用SHIFT命令还可在批处理文件中接收多于10个的命令行参数。如果指定的命令行参数超过10个,则在第10个参数(%9)之后出现的参数将依次被替换到(%9)。

  

  替换参数的恢复

  SHIFT命令不可逆。一旦执行了SHIFT命令,就不能恢复SHIFT 命令之前的第一个参数(%0)。

  

  

  SHIFT─例子

  下面的批处理文件MYCOPY.BAT说明怎样用SHIFT命令处理任意多个命令行参数,将一系列文件拷贝到一个指定的目录。使用的参数是目录名和后面的一系列文件名。

  

  @echo off

  rem MYCOPY.BAT copies any number of files

  rem to a directory。

  rem The command uses the following syntax:

  rem mycopy dir file1 file2 ...

  set todir=%1

  :getfile

  shift

  if "%1"=="" goto end

  copy %1 %todir%

  goto getfile

  :end

  set todir=

  echo All done

  

2006-1-31 20:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: