This question already has answers here:
Is there an equivalent to the Ruby Shellwords module for the Windows shell?

(3个答案)


6年前关闭。




通常,在接受用户输入时,我会做类似system("echo #{Shellwords.shellescape(data)}")的操作,但是在Windows上我总是得到:
[2] pry(main)> system("echo #{Shellwords.shellescape(var1)}")
Hello\ \'\ world => true

有没有办法可以让Windows正常逃脱?

最佳答案

最好的解决方案是将2个参数与system或exec一起使用。第二个参数不需要转义,因为它不会扩展:

system("echo", var1)

10-08 04:36