`
zyongsheng83
  • 浏览: 41337 次
  • 性别: Icon_minigender_1
  • 来自: 大连
最近访客 更多访客>>
社区版块
存档分类
最新评论

批处理 - 总结

阅读更多

常用命令

@不显示此行的路径信息
:: //注释掉一行
rem //注释掉一行, 和::相同
echo information //输出一行信息
echo. //输出空行
echo on/off //打开/关闭显示路径信息
>afile //输出信息到afile
>>afile //追加信息到afile
<afile //从afile中获取信息作为前边命令的输入
pause //暂停
call name.bat //调用一个批处理过程
%0 ... %9 //调用批处理过程是传递的参数
:aLabel //设置标签
goto aLabel //语句跳转, 应该和:aLabel配合使用
set sname=value //设置环境变量sname值为value
%sname% //引用sname的值
| //管道连接, 不管前边命令运行成功还是失败, 都运行后边的
|| //只有前边运行不成功才会运行后边的
& //
&& //只有前边运行成功才会运行后边的
and/or //并且/或者, 和if一起用
choise //在windows的command里边没有此命令
shift //在windows的command里边没有此命令

if

if [not] "abc"=="abc" aCommand //
if [not] exist aFile/aPath aCommand //如果存在aFile/aPath 则执行aCommand

for

for %a in (1,a,5) do echo %a //循环输出1,a,5
for /f "tokens=2,3* delims=/,\" %i in ("aaa/bbb\ccc/ddd/eee", "1/2/3/4") do echo %i-%j-%k
//      从第2个开始迭代  分隔符 开始字符   迭代字符串
//输出bbb-ccc-ddd/eee
for /f "skip=1 tokens=2,3* delims=/,\" %i in (afile) do echo %i-%j-%k
//      跳过第一行, 其他和上边一个相同, 有多少行输出多少次

字符串截取

set test=abcdefghijklmn
::从下标2截取长度3, 输出cde
echo %test:~2,3%
::从下标2截取到倒数下标3, 输出cdefghijk
echo %test:~2,-3%
::从倒数下标4截取到倒数下标3, 输出k
echo %test:~-4,-3%
::从下标1截取到最后, 输出bcdefghijklmn
echo %test:~1%
::从开始截取长度4, 输出abcd
echo %test:~,4%

字符串替换

set test=abcdefghijklmn
::替换bcd为wxyz
echo %test:bcd=wxyz%

技巧: 创建一个空文件

/>afile

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics