返回列表 发帖

shift 命令详解

::
@echo off&goto loop
shift 命令详解
shift 是将所有参数往前移动一位。
shift /2 是从第2个参数开始将后面的参数全部往前移动一位,但不影响前面的参数位置(即:不影响1)
shift /3 是从第3个参数开始将后面的参数全部往前移动一位,但不影响前面的参数位置(即:不影响12)
依次类推 …… ……
:loop
@echo off&echo\
set num=
set num=%num%
echo 没移位的参数为 : 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
echo\&echo 参数 1234 始终没有变化,但后面的却在逐位变化,前移。
echo\
:: 作者:随风   @bbs.bathome.net   2007-11-10
::
call :lis 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20
color 0b
echo\&echo 测试完毕,按任意键退出 ……
echo\&pause>nul&exit
:lis
set /p=%num%<nul
if "%5"=="" goto :eof
shift /5
set /p=移位后的参数为 : %1 %2 %3 %4 %5 %6 %7 %8 %9<nul
set /p=     按任意键继续......<nul
pause>nul
goto lisCOPY

[ 本帖最后由 随风 于 2007-12-14 14:53 编辑 ]
1

评分人数

技术问题请到论坛发帖求助!

是不错,以前很少用此命令,最近在编写一批处理程序时用到感觉此命令很好用
不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

反正我没用过

TOP

不懂也看看
学了还得学 images/avatars/06.gif

TOP

里面有几个看不懂能不能给解释一下,loop  num     call   lis  color 0b    goto :eof       >unl 这些我都看不懂,不能帮忙解释一下啊谢谢了。

TOP

基本看不懂,可能是太晚了想睡觉了
这个字符是什么意思呢?我一直都弄不明白!

TOP

,应该是显示错误吧?

TOP

 楼主帮忙解释下这个是什么意思吧!
不管黑猫白猫,会捉老鼠的猫就是好猫!

TOP

回复 8楼 的帖子

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

TOP

回复 9楼 的帖子

确切地说,一个退格符是将光标往前移动一位,接着出现的字符会将原来的字符覆盖。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

9楼只是为了单纯回答8楼的问题,如果具体到在楼主代码中的作用,请参考10楼解答^_^
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

怎么输入   谢谢

TOP

刚刚接触,不太明白。。。

TOP

闪烁效果

@echo off
setlocal enabledelayedexpansion
title 闪烁效果
:start
color 0e
set str=人生得意须尽欢
for /l %%i in (0 1 6) do (
    set /p=!str:~%%i,1!<nul
    rem 依次取出变量str中的每一个字符,并显示
    ping -n 0 127.1>nul
    rem 设置每个输出字符的延迟时间
)
set /p a=<nul
rem 输出一些退格符使光标置于该行最左端
set /p a=                  <nul
rem 输出空格将之前文字覆盖
set /p a=<nul
rem 再次输出退格符使光标位于最左端(数量要多余之前的空格数)
goto start

TOP

先学习下,有问题再问

TOP

返回列表