批处理%〜f1有效,但%〜dp1由于空格而失败

TeeJay

我正在尝试创建一个批处理脚本,以将文件的快捷方式发送到我的开始菜单,但是在设置“开始于”选项时遇到了麻烦。我正在使用Optimum X中的快捷方式来执行此操作,这可能是他们使用了十年的程序而不是我的代码出现的错误。

  • %~f1 = C:\Program Files (x86)\Example\Example.exe
  • %~dp1 = C:\Program Files (x86)\Example\

跑步

shortcut /f:"%targetfolder%\%fileName%.lnk" /w:"%~f1" /a:c /t:%1

可以按预期工作,并在“开始于”设置为文件目录的情况下创建快捷方式。但是跑步

shortcut /f:"%targetfolder%\%fileName%.lnk" /w:"%~dp1" /a:c /t:%1

遇到空格时失败,例如,如果路径在Program Files中,则错误为

“参数“文件”无效

该命令的语法不正确”

错误。

很抱歉,如果这还不够,我对批次的了解很少。

MC ND

您的问题不是空格,而是标准参数的处理方式。

在您的情况下,您不是将数据传递给内部命令,而是传递给将使用其自己的解析器(默认的C启动代码的外部可执行文件对于此解析器,反斜杠后加引号是不转义引号的转义引号。

当您%~dp1以反斜杠结尾时,它将转引号转义,因此该参数会一直持续到第一个未加引号的空格,在您的情况下Program是在/t切换之后。因此,Files(在/t开关中)不能识别为有效参数。

通常的方法是使用类似的方法删除结尾的反斜杠

for %%a in ("%~dp1.") do (
    shortcut /f:"%targetfolder%\%fileName%.lnk" /w:"%%~fa" /a:c /t:"%~1"
)

在这里,该for命令用于处理带有添加点的文件路径。这就是为什么当我们检索到所引用元素(%%~fa的完整路径时,将不包含结尾反斜杠的原因。

但是,如果目标文件夹是驱动器的根目录,则此方法将不起作用。不能删除结尾的反斜杠。因此,另一种方法是通过简单地转义反斜杠来避免引用逸出

shortcut /f:"%targetfolder%\%fileName%.lnk" /w:"%~dp1\" /a:c /t:"%~f1"

现在,引号前面有两个反斜杠,这两个反斜杠将被视为转义的反斜杠,后跟该参数的结束引号。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

命令在命令行上有效,但在批处理文件中失败

来自分类Dev

curl powershell 有效,批处理文件无效

来自分类Dev

错误1062(23000):键“ PRIMARY”的条目“ DP1”重复

来自分类Dev

字符串索引-为什么S [0] [0]有效而S [1] [1]失败?

来自分类Dev

处理f1键的方式不可见

来自分类Dev

DLL加载失败:%1不是有效的Win32应用程序-Appcelerator

来自分类Dev

'matplotlib'ImportError:DLL加载失败:%1不是有效的Win32应用程序

来自分类Dev

Python:DLL加载失败:%1不是有效的Win32应用程序

来自分类Dev

DLL加载失败:%1不是有效的Win32应用程序-Appcelerator

来自分类Dev

由于输入字符串中有空格,导致批处理文件错误

来自分类Dev

由于有效的商业原因而失败的有效请求的“正确” HTTP状态代码是什么?

来自分类Dev

在Python中使用多重处理有效创建1%的样本

来自分类Dev

'返回对象[值1][值2] || 如果 value1 不是有效属性,则 default' 失败

来自分类Dev

在/ f批处理命令中使用空格

来自分类Dev

为什么“ let x = 1”有效的F#表达式?

来自分类Dev

tensorflow数据集:使用批处理(批处理->映射->批处理)或仅进行映射更有效地进行矢量化?

来自分类Dev

您应该如何有效地批处理复杂的网格?

来自分类Dev

使用准则2进行批处理INSERT IGNORE的最有效方法

来自分类Dev

有效地批处理Spark数据帧以调用API

来自分类Dev

批处理文件:-actions参数-它是有效的参数吗?

来自分类Dev

Windows批处理if语句仅在全部一行时有效

来自分类Dev

在春季进行批处理工作的有效方法

来自分类Dev

matplotlib 1.3.0 ImportError:DLL加载失败:%1不是有效的Win32应用程序

来自分类Dev

python cython ImportError:DLL加载失败:%1不是有效的Win32应用程序

来自分类Dev

cx-freeze“ ImportError:DLL加载失败:%1不是有效的Win32应用程序”

来自分类Dev

ImportError:DLL加载失败:%1不是_imaging模块的有效Win32应用程序

来自分类Dev

python cython ImportError:DLL加载失败:%1不是有效的Win32应用程序

来自分类Dev

XSS 有效,但只有 1 个字

来自分类Dev

Woocommerce API返回1,但有效

Related 相关文章

  1. 1

    命令在命令行上有效,但在批处理文件中失败

  2. 2

    curl powershell 有效,批处理文件无效

  3. 3

    错误1062(23000):键“ PRIMARY”的条目“ DP1”重复

  4. 4

    字符串索引-为什么S [0] [0]有效而S [1] [1]失败?

  5. 5

    处理f1键的方式不可见

  6. 6

    DLL加载失败:%1不是有效的Win32应用程序-Appcelerator

  7. 7

    'matplotlib'ImportError:DLL加载失败:%1不是有效的Win32应用程序

  8. 8

    Python:DLL加载失败:%1不是有效的Win32应用程序

  9. 9

    DLL加载失败:%1不是有效的Win32应用程序-Appcelerator

  10. 10

    由于输入字符串中有空格,导致批处理文件错误

  11. 11

    由于有效的商业原因而失败的有效请求的“正确” HTTP状态代码是什么?

  12. 12

    在Python中使用多重处理有效创建1%的样本

  13. 13

    '返回对象[值1][值2] || 如果 value1 不是有效属性,则 default' 失败

  14. 14

    在/ f批处理命令中使用空格

  15. 15

    为什么“ let x = 1”有效的F#表达式?

  16. 16

    tensorflow数据集:使用批处理(批处理->映射->批处理)或仅进行映射更有效地进行矢量化?

  17. 17

    您应该如何有效地批处理复杂的网格?

  18. 18

    使用准则2进行批处理INSERT IGNORE的最有效方法

  19. 19

    有效地批处理Spark数据帧以调用API

  20. 20

    批处理文件:-actions参数-它是有效的参数吗?

  21. 21

    Windows批处理if语句仅在全部一行时有效

  22. 22

    在春季进行批处理工作的有效方法

  23. 23

    matplotlib 1.3.0 ImportError:DLL加载失败:%1不是有效的Win32应用程序

  24. 24

    python cython ImportError:DLL加载失败:%1不是有效的Win32应用程序

  25. 25

    cx-freeze“ ImportError:DLL加载失败:%1不是有效的Win32应用程序”

  26. 26

    ImportError:DLL加载失败:%1不是_imaging模块的有效Win32应用程序

  27. 27

    python cython ImportError:DLL加载失败:%1不是有效的Win32应用程序

  28. 28

    XSS 有效,但只有 1 个字

  29. 29

    Woocommerce API返回1,但有效

热门标签

归档