Windows-批处理

%0到%9

  • %i : 提取第i个命令选项,例如%1提取第1个option,i可以取值从1到9
  • %~0 : 取文件名(名+扩展名)
  • %~f0:取全路径
  • %~d0:取驱动器名
  • %~p0:只取路径(不包驱动器)
  • %~n0:只取文件名
  • %~x0:只取文件扩展名
  • %~s0:取缩写全路径名
  • %~a0:取文件属性
  • %~t0:取文件创建时间
  • %~z0:取文件大小
  • (以上选项可以组合起来使用,~表示删除参数外面的引号)

eg:

  1. test.bat "test"
    %1:"test"
    %~1:test(没有了双引号)

  2. bat文件在e:/mybat/test.bat
    %0:e:/mybat/test.bat
    %~dp0:e:/mybat/

获取批处理文件所在路径

cd /d %~dp0
%0是批处理文件本身的路径,~dp进行扩展

回显

  • @echo off执行以后,后面所有的命令均不显示,包括本条命令。
  • echo off执行以后,后面所有的命令均不显示,但本条命令是显示的。

注释

  1. :: 注释内容(第一个冒号后也可以跟任何一个非字母数字的字符)
  2. rem 注释内容(不能出现重定向符号和管道符号)
  3. echo 注释内容(不能出现重定向符号和管道符号)〉nul
  4. if not exist nul 注释内容(不能出现重定向符号和管道符号)
  5. :注释内容(注释文本不能与已有标签重名)
  6. %注释内容%(可以用作行间注释,不能出现重定向符号和管道符号)
  7. goto 标签 注释内容(可以用作说明goto的条件和执行内容)
  8. :标签 注释内容(可以用作标签下方段的执行内容)

不自动关闭窗口

使用pause

@echo off
echo hello world
pause

猜你喜欢

转载自www.cnblogs.com/jffun-blog/p/10217605.html