3

Normally when taking user input I would do something like system("echo #{Shellwords.shellescape(data)}") but on Windows I always get:

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

Is there a way I can properly escape for Windows?

Jordon Bedwell
  • 3,189
  • 3
  • 23
  • 32

1 Answers1

2

The best solution is to use 2 parameters with system or exec. The second parameter doesn't need to be escaped because it doesn't get expanded:

system("echo", var1)
pguardiario
  • 53,827
  • 19
  • 119
  • 159