Ruby   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在Ruby中转义终端的字符串?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试启动mplayer.我的文件名包含空格,这些应该被转义.
这是我使用的代码:
@player_pid = fork do
   exec "/usr/bin/mplayer #{song.filE}"
end

其中#{song.filE}包含像“/ home / example / music / 01 – song.mp3”这样的路径.我如何正确地逃避这个变量(和标题可能包含的其他奇怪的字符),所以终端会接受我的命令?

解决方法

Shellwords应该为你工作:)
exec "/usr/bin/mplayer %s" % SHellwords.escape(song.filE)

在红宝石1.9.x中,看起来您必须先要求它

require "sHellwords"

但是在ruby 2.0.x中,我没有必要明确要求它.

大佬总结

以上是大佬教程为你收集整理的如何在Ruby中转义终端的字符串?全部内容,希望文章能够帮你解决如何在Ruby中转义终端的字符串?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。