bat 脚本报错“此时不应有\test.txt>”

windows bat中有这样一个遍历test.txt中的内容并打印的test.bat脚本:

1
2
3
4
@echo off
if "%~1"=="" set SORHOME=D:\test()
if not "%~1"=="" set SORHOME=%~1
for /f %%i in (%SORHOME%\test.txt) do echo %%i

 脚本的执行结果是:


【问题】:


SORHOME变量的路径中带有“()”, 为了解决括号的问题,尝试了很多种,包括变量两边单引号,双引号,这些都不可以。

【解决办法】:文件夹命名的时候禁止带‘()’,因为这个(), 在bat脚本中的for需要用到。


【修改结果】:

1
2
3
4
@echo off
if "%~1"=="" set SORHOME=D:\test
if not "%~1"=="" set SORHOME=%~1
for /f %%i in (%SORHOME%\test.txt) do echo %%i

【执行结果】:



【备注】:

test.txt 内容就是

1

2

3

4

5

6


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mutiantong/article/details/77801007
个人分类: BASH脚本 windows
上一篇关闭Xshell警告音
下一篇无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭