使用默认应用打开名称中包含 space(或 &)的文件
open file that has a space (or &) in its name, with default app
我正在尝试打开一个文件,路径是 C:\Users\kevin\Documents\LIN KED.png(或 C:\Users\kevin\Documents\LIN&KED.png)。文件路径将在 linked_file_command.
我想在 windows 的默认应用程序中打开该文件。我想继续使用 linked_file_command 字符串,只是为了有一个变量而不是硬编码路径。
我尝试了以下方法:
1) system %{cmd /c "start #{linked_file_command}"}
(from )
2) system('cmd /c start "" C:\Users\kevin\Documents\LIN KED.png')
(from https://www.ruby-forum.com/topic/209961 )
两者的结果:
Le system ne peut trouver le fichier C:\Users\kevin\Documents\LIN。 (系统找不到文件C:\Users\kevin\Documents\LIN)
提前致谢^.^
这应该有效
filePath = "c:\path\to\file name.jpg"
system %{cmd /c "start #{filePath}"}
管理SPACE
system('cmd /c start "" "C:\Users\kevin\Documents\LIN KED.png"')
我在这里阅读超级用户。com/questions/511486/…
第一个“”用于shell window名称,第二个“”用于命令(参数)
管理 &
当我使用上面的行时不需要。
在其他情况下,尝试在 & 符号前添加一个“^”
system('cmd /c start "" "C:\Users\kevin\Documents\LIN^&KED.png"')
来自 : How do I escape ampersands in batch files?
我正在尝试打开一个文件,路径是 C:\Users\kevin\Documents\LIN KED.png(或 C:\Users\kevin\Documents\LIN&KED.png)。文件路径将在 linked_file_command.
我想在 windows 的默认应用程序中打开该文件。我想继续使用 linked_file_command 字符串,只是为了有一个变量而不是硬编码路径。
我尝试了以下方法:
1) system %{cmd /c "start #{linked_file_command}"}
(from )
2) system('cmd /c start "" C:\Users\kevin\Documents\LIN KED.png')
(from https://www.ruby-forum.com/topic/209961 )
两者的结果:
Le system ne peut trouver le fichier C:\Users\kevin\Documents\LIN。 (系统找不到文件C:\Users\kevin\Documents\LIN)
提前致谢^.^
这应该有效
filePath = "c:\path\to\file name.jpg"
system %{cmd /c "start #{filePath}"}
管理SPACE
system('cmd /c start "" "C:\Users\kevin\Documents\LIN KED.png"')
我在这里阅读超级用户。com/questions/511486/…
第一个“”用于shell window名称,第二个“”用于命令(参数)
管理 &
当我使用上面的行时不需要。
在其他情况下,尝试在 & 符号前添加一个“^”
system('cmd /c start "" "C:\Users\kevin\Documents\LIN^&KED.png"')
来自 : How do I escape ampersands in batch files?