11155
(-- --)
June 12, 2012, 1:49pm
1
Hello,
In my rails application, I have a file which name is: "d:/Copy of
t.txt".
I want to open it with the default program.
This file is a TXT file but it can be another kind of file (png, pdf,
etc) and can have, or not, white spaces on his path/name.
I've tried several ways to do it but, until now, I was not able to
accomplish by goal.
I have tried:
f1 = "d:/Copy of t.txt"
#system %{cmd /c "start #{f1}"}
#cmd = 'cmd /c "start ' + f1 + '"'
#cmd = 'cmd /c """start ' + f1 + '"""'
#cmd = "cmd /c ""start '" + f1 + "'"""
cmd = "cmd /c ""start '" + f1 + "'"""
system (cmd)
But no one of these solutions has worked.
Anyone can help me?
Thank you
Best regards
I don’t use windows, but you could try escaping the space “foo\ bar”
11155
(-- --)
June 12, 2012, 2:32pm
3
Hello,
Thanks for your answer. However, still not working...
f1 = "d:/Copy of t.txt"
f1 = f1.gsub(" ", "\\ ")
#system %{cmd /c "start #{f1}"}
#cmd = 'cmd /c "start ' + f1 + '"'
#cmd = 'cmd /c """start ' + f1 + '"""'
#cmd = "cmd /c ""start '" + f1 + "'"""
cmd = "cmd /c ""start '" + f1 + "'"""
system (cmd)
Oscar Del Ben wrote in post #1064217:
Have you tried inserting
puts cmd
then copying and pasting the output into the terminal to see if that works?
Colin
For a Microsoft DOS file name it is wrong. It should be “d:\Copy of t.txt”. Your problem could simply be the escaping of the backslash. As you have shown it in rails, you would be escaping the C character.
11155
(-- --)
June 13, 2012, 8:05am
6
Hello,
Thanks for your answer.
I have made a put of the command
f1 = "d:/sat - Copy.png"
f1 = f1.gsub(" ", "\ ")
cmd = 'cmd /c "start ' + f1 + '"'
puts "CMD: " + cmd
system (cmd)
....and the result is the following one:
cmd /c "start d:/sat - Copy.png"
In attachment, I've putted a picture with the error.
Thanks
Regards
Colin Law wrote in post #1064223:
Hello,
Please don't top post, it makes it difficult to follow the thread.
Insert your reply inline in previous post. Thanks
Thanks for your answer.
I have made a put of the command
f1 = "d:/sat - Copy.png"
f1 = f1.gsub(" ", "\ ")
cmd = 'cmd /c "start ' + f1 + '"'
puts "CMD: " + cmd
system (cmd)
....and the result is the following one:
cmd /c "start d:/sat - Copy.png"
Exactly what command are you trying to execute?
Colin