2011-12-26 23 views
3

通常採取用戶輸入的時候我會做類似system("echo #{Shellwords.shellescape(data)}"),但在Windows上我總是得到:用於Windows的Ruby Shellwords.shellescape?

[2] pry(main)> system("echo #{Shellwords.shellescape(var1)}") 
Hello\ \'\ world => true 

有沒有一種方法,我可以逃避正常的Windows?

+0

沒有答案,它已被接受而沒有答案。 – 2011-12-26 11:39:12

+0

hello envygeeks – horseyguy 2011-12-29 01:39:49

回答

1

最好的解決方案是在system或exec中使用2個參數。第二個參數不需要轉義,因爲它不會被擴展:

system("echo", var1)