前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【批处理学习笔记】第二十课:扩充字符串

【批处理学习笔记】第二十课:扩充字符串

作者头像
Angel_Kitty
发布2018-04-09 16:02:07
9230
发布2018-04-09 16:02:07
举报
文章被收录于专栏:小樱的经验随笔

    “扩充”这个词汇来自于微软自己的翻译,意思就是对表示文件路径的字符串进行特殊的处理,具体功能罗列如下: =========================================      ~I         - 删除任何引号("),扩充 %I      %~fI        - 将 %I 扩充到一个完全合格的路径名      %~dI        - 仅将 %I 扩充到一个驱动器号      %~pI        - 仅将 %I 扩充到一个路径      %~nI        - 仅将 %I 扩充到一个文件名      %~xI        - 仅将 %I 扩充到一个文件扩展名      %~sI        - 扩充的路径只含有短名      %~aI        - 将 %I 扩充到文件的文件属性      %~tI        - 将 %I 扩充到文件的日期/时间      %~zI        - 将 %I 扩充到文件的大小      %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩充                    到找到的第一个完全合格的名称。如果环境变量名                    未被定义,或者没有找到文件,此组合键会扩充到                    空字符串 可以组合修饰符来得到多重结果:      %~dpI       - 仅将 %I 扩充到一个驱动器号和路径      %~nxI       - 仅将 %I 扩充到一个文件名和扩展名      %~fsI       - 仅将 %I 扩充到一个带有短名的完整路径名      %~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充                    到找到的第一个驱动器号和路径。      %~ftzaI     - 将 %I 扩充到类似输出线路的 DIR =========================================     以上内容引用于for /?帮助信息。其中的I代表变量I,不过需要说明的是,不是所有的变量都能够进行扩充的,有两个条件:1、该字符串代表一个文件路径;2、变量要用%x来表示,x可取a-z A-Z 0-9共62个字符中的任意一个。举例说明: ========================================= @echo off echo 正在运行的这个批处理: echo 完全路径:%0 echo 去掉引号:%~0 echo 所在分区:%~d0 echo 所处路径:%~p0 echo 文件名:%~n0 echo 扩展名:%~x0 echo 文件属性:%~a0 echo 修改时间:%~t0 echo 文件大小:%~z0 pause =========================================     其中的%0是批处理里面的参数,代表当前运行的批处理的完全路径。类似的还有%1-%9,分别代表传递来的第1-9个参数。例子如下: =============================================== @echo off set aa=C:\Windows\PPP\a.btx call :deal aaa %aa% "c c" ddd eee pause>nul exit :deal echo %%0 = %0 echo %%1 = %1 echo %%2 = %2 echo %%3 = %3 echo %%4 = %4 echo %%5 = %5 ===============================================     其中,变量aa在之前是不可以扩充的,通过call命令并将aa作为参数传递给子函数:deal,将aa变量转换成了变量%1,即符合%x格式,从而可以进行字符串扩充。     至于%x中x取a-z A-Z的形式,可以复习一下for语句,for语句里面的变量就是用%x来表示的,因而可以直接进行扩充。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-09-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档