标题: [文本处理] 批处理使用变量表示路径问题 [打印本页]
作者: hlj.6809277 时间: 2019-8-19 09:53 标题: 批处理使用变量表示路径问题
本帖最后由 hlj.6809277 于 2019-8-19 09:54 编辑
通过数据读取获得了变量如 DirEaxm等于地址E:\1_Projiect
在变量使用时:
cd %DirEaxm%能顺利进入变量所在的地址
而表达进入变量地址下的子目录时,会提示文件名、目录名或卷语法不正确
如 cd %DirEaxm%\Test1
麻烦各位大大解惑,谢谢!
作者: Batcher 时间: 2019-8-19 10:01
复制代码
加上双引号试试
如果不行,请把完整代码发出来我试试。
作者: hlj.6809277 时间: 2019-8-19 10:24
回复 2# Batcher
做了一个Demo,烦请解压试一下,需要把Test.log里的路径改为您电脑上所在的路径
代码简化!Row!忘记定义参数值了,从下面的ECHO看是获取到了地址的,麻烦看看
作者: hlj.6809277 时间: 2019-8-19 10:25
回复 2# Batcher
加双引号不行,目录里没有空格字符
作者: Batcher 时间: 2019-8-19 10:51
回复 4# hlj.6809277 - @echo on
-
- cd /d %~dp0
-
- setlocal enabledelayedexpansion
- set Row=1
- ::获取共享文件夹目录(Test.log的第一行和第一列)
- for /f "tokens=1 delims= " %%i in (Test.log) do (
- set/a m+=1
- if !m! equ !Row! set ShareDir=%%i
- )
-
- echo 共享文件夹目录=%ShareDir%
- cd /d %ShareDir%
- echo 1 >"C:\Users\heliujun\Desktop\1.log"
- cd /d %ShareDir%\Test1
- echo 2 >>"C:\Users\heliujun\Desktop\1.log"
复制代码
执行这个代码,结果发出来看看。
作者: hlj.6809277 时间: 2019-8-19 10:59
本帖最后由 hlj.6809277 于 2019-8-19 11:03 编辑
回复 5# Batcher
已经运行成功了,cd /d后可以进入目标子目录
操作目录在不同的分区导致的,多谢大大
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |