批处理文件bat中,路径包含空格应该怎么处理

批处理文件bat中,路径包含空格应该怎么处理

问题描述

  • 在bat文件中,定义了一个路径变量:set projectpath=C:\Users\user name\Desktop,基于这个路径,需要进行一些处理,所以定义了另一个路径变量:set output=%projectpath%\output。
  • 在bat运行时就出问题了,因为projectpath表示的路径中有空格,所以在取变量projectpath的值时被截断了,只能取作C:\Users\user,自然的,变量output的值也不是我想要的。
  • 针对这个问题要怎么解决呢。

解决过程

  • 我是真没想到这么个问题还让我查了挺长时间的,感觉bat好烂呀(当然是因为我不熟悉哈,只是单纯的觉得烂,发泄一下)。
  • 空格没法用转义来表示,字符串和变量两个双引号时也不能直接拼接,真是烦死了。
  • 如果只是路径中包含了空格,那么加一个双引号就可以了,但是我这里用到了变量来确定另一个路径,加引号解决不了问题。
  • 最后看到了这篇帖子,问题才算解决了,感谢。

最终解决办法

  • 采用8个字符缩写,即写头六个字母(略去空白),另加波浪号和1,首字母不足六个字母,略去空白,用了第二个词的字母,凑成六个。例如:
    • "Documents and Settings“ – DOCUME~1
    • “Local Settings” – LOCALS~1 (注意略去空白,用了第二个词的字母,凑成六个,再加波浪号和1)。
  • 针对我的问题,也就是:set projectpath=C:\Users\userna~1\Desktop.
  • 用帖子中的第三种方法也可以。
  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值