位置: 编程技术 - 正文

BAT 参数去引号(各种去引号的奇葩方式)(bat 参数个数)

编辑:rootadmin

很多情况下,我们需要脱除一个字符串中可能会存在的引号,然后在加上自己的引 号使其中的特殊字符(命令连接符& 、| 、&&、||,命令行参数界定符Space 、tab 、 ; 、= ,字符化转义符^ 、" ,变量化转义符% 等)字符化,失去特定的作用,而作为 普通的字符成为字符串的一个组成部分。

  一、将字符串中的引号脱去的简单办法有三种,它们的功能相近,只是各自的使用 场合不同,可以处理大多数的情况。

  1-1 、如果字符串存在于命令行参数%1中,可以使用%~1 脱去第一对外侧引号,如 果没有外侧引号则字符串不变;

  1-2 、如果字符串存在于for 替代变量%%i 中,可以使用%%~i脱去第一对外侧引号, 如果没有外侧引号则字符串不变;

  1-3 、如果字符串存在于环境变量%temp%中,可以使用%temp:"=% 脱去其中所有的 引号,如果没有引号则字符串不变;

  1-4 、以上三种方案在某种程度上可以互相通用,因为它们作为变量的一种类型, 可以通过类似以下的代码或代码片断相互转移:

1-4-1、for替代变量转命令行参数: call:DeQuote %%i 1-4-2、环境变量转命令行参数:call:DeQuote %temp% 1-4-3、命令行参数转for替代变量:for %%i in (%1) do ... 1-4-4、环境变量转for替代变量:for %%i in (%temp%) do ... 1-4-5、命令行参数转环境变量:set temp=%1 1-4-6、for替代变量转环境变量:for ... set temp=%%i

  二、如果字符串的引号分布情况很复杂,或者我们对被脱去引号的位置有特殊要求, 或者字符串中可能出现某些控制字符,则可以将字符串首先通过1-4 中的对应方法转存 至环境变量中,在使用以下方案或其组合进行处理:

  2-1 、可以使用set var=%var:~1%脱去环境变量var 串首的第一个引号,如果串首 不存在引号则第一个字符被脱去;

  2-2 、可以使用set %var:*"=% 脱去环境变量var 串首的第一个引号,如果串首不 存在引号则变量值不变;

  2-3 、可以使用set var=%var:~0,-1% 脱去环境变量var 串尾的最后一个引号,如 果串尾不存在引号则最后一个被脱去;

  2-4 、可以使用set "var=%var%脱去环境变量var 串尾的最后一个引号,如果串尾 不存在引号则环境变量被清空;

  2-5 、可以使用set var=%var:~1,-1% 脱去环境变量var 串最外侧的一对引号,如 果串外侧不存在引号则外侧一对字符被脱去;

  2-6 、可以使用%var:*"=set "var=%脱去环境变量var 串最外侧的一对引号,如果 串外侧不存在引号则出现语法错误;

  2-7 、可以使用set "var=%var:"=%"脱去环境变量var 串中可能出现的所有引号, 如果串外侧不出现引号则变量值不变;与1-3 不同的是,它容许字符串的匹配引号对内 出现特殊控制字符;

推荐整理分享BAT 参数去引号(各种去引号的奇葩方式)(bat 参数个数),希望有所帮助,仅作参考,欢迎阅读内容。

BAT 参数去引号(各种去引号的奇葩方式)(bat 参数个数)

文章相关热门搜索词:bat 参数个数,bat 带参数,去掉批处理字符串双引号,bat引用变量,bat 带参数,bat引用变量,bat引用变量,bat 带参数,内容如对您有帮助,希望把文章链接给更多的朋友!

使用批处理命令设置windows系统的ip地址和dns附图 找到对应的网卡名称使用命令:ipconfigipconfig/allWindowsIPConfigurationHostName............:D-4-3PrimaryDnsSuffix.......:NodeType............:UnknownIPRoutingEnabled........:NoWINSProx

利用DOS命令来对抗U盘病毒保护U盘数据 U盘的便捷性与大容量的存储性,深受着广大用户的欢迎,几乎每个用户都会人手一个,但就是这么广泛的使用,以至于U盘被病毒悄悄盯上,越来越多的

建立隐藏磁盘的bat代码 @ECHOOFFMDE:RECYCLERUDrives.{FF--B-9F-AAFE}NULIFEXISTX:NULGOTODELETESUBSTX:E:RECYCLERUDrives.{FF--B-9F-AAFE}STARTX:GOTOEND:DELETESUBST/DX::END把上

标签: bat 参数个数

本文链接地址:https://www.jiuchutong.com/biancheng/374956.html 转载请保留说明!

上一篇:bat 传递超过10个参数的情况(bat上传文件)

下一篇:使用批处理命令设置windows系统的ip地址和dns附图(批处理命令在哪个菜单中)

  • 增值税发票认证在哪里
  • 劳务费个人所得税税率表2023最新
  • 换了公司后个税还要申请申报吗
  • 房产税计税依据是什么
  • 计提本月增值税会计科目
  • 结转销售成本的分录
  • 未入账分期金额是什么意思
  • 个税里的累计专票是什么
  • 贷款公司股权转让合法吗
  • 电子发票读取不出怎么办
  • 核定征收生产经营所得税率
  • 贷款公司收取服务费是诈骗吗
  • 电子厂税负率一般是多少
  • 刚升级一般纳税人可以申请贷款吗
  • 问10个问题
  • 其他应付款的会计英文
  • 如何准确区分不动产租赁和仓储服务?
  • 收据和发票有什么区别?买家电
  • 汇算清缴发现以前预缴报表资产错误
  • 前期投资费用怎么做账
  • reminder.exe - reminder是什么进程 有什么用
  • 生产企业结账流程
  • 高新企业研发费用比例
  • PHP:stream_context_get_params()的用法_Stream函数
  • PHP:pg_lo_create()的用法_PostgreSQL函数
  • 工程价款结算的方式
  • 分期付款购买固定资产折现率怎么算
  • hiddenalbum是什么文件夹
  • php __invoke
  • PHP:mcrypt_module_close()的用法_Mcrypt函数
  • 外籍个人取得的现金住房补贴所得免征个人所得税吗
  • vue中如何使用axios
  • 残疾人就业保障金计入什么科目
  • 固定资产一次性折旧政策2023
  • 餐费发票怎么做账务处理
  • 汽车4s店一般会摆放什么小零食
  • 消费税减免规定有哪些
  • css水平居中和垂直居中怎么设置
  • 不确认收款退款对方还能收到钱么?
  • 研发费用加计扣除75%还是100%
  • 员工办理健康证需要什么材料
  • ps抠图怎样
  • java计数器的用法
  • 出口退税率为0要补增值税吗
  • 预缴分包抵扣,所有分包都可以抵扣吗
  • 存货包括材料成本吗
  • 企业自产自用的产品需要缴纳增值税吗
  • 个体户逾期未报年报后补报了怎么办
  • 借款人和还款人不一致,收据打给谁
  • 个人缴纳公积金的方法
  • 法定盈余公积和任意盈余公积可用于
  • 补计提所得税怎么做分录
  • 应付职工薪酬中社保费怎么记账
  • 固定资产折旧年限
  • 社保退休金计算方法
  • 产品质量问题有赔偿吗
  • 营改增后建筑业怎么开票
  • 预收货款未发货怎么办
  • 金税卡就是税控盘吗
  • 税务代扣社保怎么办理?
  • 无形资产的商誉是什么
  • 判断数据库表是否为空
  • mysql的随机函数
  • sql触发器菜鸟教程
  • mysql输入中文显示乱码
  • rhel7.5重置密码
  • win10新版cortana
  • winxp系统介绍
  • win7系统怎么备份文件
  • Win7系统安装方法
  • cocos2d官网
  • javascript 高级
  • 远程调用call
  • javascript常用的数据类型有哪些
  • python自动化监控
  • js遍历table的td
  • 国家税务总局千户集团
  • 上海房产税免税面积怎么算
  • 海南海葬需要多少费用
  • 税务局直属机构
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设