Windows cmd命令仅在第三次之后有效

Windows cmd命令仅在第三次之后有效,windows,cmd,Windows,Cmd,我有一个CMD命令,它只在第三次执行后才起作用。我想打开一个命令,它给我一个路径,然后我想转换路径,最后我想显示文件的输入 这是我的命令: @echo off & for /f %A in ('getFilePath') do set string="C:%A" & set newstring=%string:/=\% & type %newstring% & @echo on 最后我找到了一个解决办法,我相信这不是最好的办法,但对我来说很有效 @echo of

我有一个CMD命令,它只在第三次执行后才起作用。我想打开一个命令,它给我一个路径,然后我想转换路径,最后我想显示文件的输入

这是我的命令:

@echo off & for /f %A in ('getFilePath') do set string="C:%A" & set newstring=%string:/=\% & type %newstring% & @echo on

最后我找到了一个解决办法,我相信这不是最好的办法,但对我来说很有效

@echo off & for /f %A in ('getFilePath') do ( set script=%A & call type C:%script:/=\\%) & @ECHO ON
可能需要(如果没有延迟扩展,也无法工作),但令人惊讶的是
类型“c:/path/file.ext”
可以工作(
类型c:/path/file.ext
不能),因此您可以只执行以下操作:

@echo off & @for /f %A in ('getFilePath') do @type "C:%A"  & @echo on

(假设
getFilePath
提供了类似于
/path/file.ext
的命令)

什么是
getFilePath
命令?你会考虑把它改写成.BAT脚本,直到它工作,然后把它转换成一行吗?请编辑原始帖子。
@echo off & @for /f %A in ('getFilePath') do @type "C:%A"  & @echo on