gpt4 book ai didi

batch-file - 使用不属于当前目录的文件作为参数运行批处理时出错

转载 作者:行者123 更新时间:2023-12-04 04:54:47 25 4
gpt4 key购买 nike

在INTERNET上找了几遍,貌似对路径与bat文件(位于当前目录)不一样的文件进行批处理显然是不行的。那么您能告诉我是否有解决此问题的方法,而无需将此文件复制到当前目录吗?

有关更多信息,请查看我每次使用当前目录中的参数运行 bat 时遇到的错误。我不明白为什么回显 "%~f1"成功返回 "D:\WorkpaceDEV\opt\ABC\IJS_002.TXT"并且我的文本文件绝对存在于文件夹 D:\WorkpaceDEV\opt\ABC"中。

C:\Users\bob\Desktop\DEV\Workspace>
C:\Users\bob\Desktop\DEV\Workspace>run.bat "D:\WorkpaceDEV\opt\ABC\IJS_002.TXT"
"D:\WorkpaceDEV\opt\ABC\IJS_002.TXT"
La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte.

这是我的原始 bat 文件
     @ echo off
echo "%~f1"
findstr /r "I.*=" "%~f1" >outer.TXT

在我看来:我收到的错误消息与配置问题有关,但我不确定!
如果有帮助,我在 7 32。如果您遇到此问题,也请告诉我。如果是这样,也许我们可以得出结论,这是来自微软的 Bug?我真的被阻止了,我期待着从你那里得到。
非常感谢你让我对这个问题大开眼界

最佳答案

嗯,使用%~f1不保证文件存在!如果提供给批处理文件的参数包含完整路径,则 %~f1只返回相同的信息,不检查文件是否存在。

我建议您测试下面的批处理文件:

@ echo off
echo "%~f1"
if exist "%~f1" (
findstr /r "I.*=" "%~f1" >outer.TXT
) else (
echo File does NOT exist!
)

关于batch-file - 使用不属于当前目录的文件作为参数运行批处理时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16906169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com