includeEnvelopeVoidReason: "true"
当我将IndexWriterConfig
更改为C:\Program Files\mu-repo>mu
python: can't open file 'C:\Program': [Errno 2] No such file or directory
C:\Program Files\mu-repo>cat mu.bat
@echo off
python %~dp0\mu %*
的绝对路径名时,可以找到批处理文件:
mu.bat
如何继续使用mu.bat
,而不用绝对路径名替换它?
感谢。
答案 0 :(得分:1)
将mu.bat
更改为以下内容:
@echo off
python "%~dpn0" %*
封闭的"..."
可确保将路径识别为单个参数,即使它包含空格。
请注意,我已将n
添加到%~dp0
,这会添加批处理文件的文件名 root (不带扩展名的文件名) - mu
,在这种情况下 - 到结果路径,总体上C:\Program Files\mu-repo\mu
。
一些旁白:
%~dp0
等表达式的语法 - 对%0
的修改引用,其中包含批处理文件的路径 - 将在您解释时运行help call
。
正如aschipfl在对该问题的评论中指出的那样,d
部分扩展到目录路径,包括尾随\
,因此无需追加一。
不双引号%*
("%*"
)传递所有参数,因为这会产生不同的命令行 - 只需使用{{1 as-is(unquoted)。
允许在单个参数中混合双引号和不引用的部分;鉴于%*
本身并不需要双引号,mu
和"%~dp0"mu
都可以使用。