Escape-Characters

從 Ruby 打開帶有空格的文件

  • March 11, 2012

當我需要在 emacs 中以程式方式打開一個名稱中有空格的文件時,我該怎麼做?我已經從 Ruby 腳本中嘗試了這些命令,在反引號內或popen(…)

emacs "foo bar"

要麼

emacs foo\ bar

打開兩個文件,每個文件名為foobar,但我想打開一個名為 的文件foo bar

您在引用時遇到問題,因為您使用命令行呼叫 popen,該命令行被傳遞給 shell。Ruby 的字元串解析器要麼吃掉雙引號,要麼吃掉反斜杠。您可以使用一個字元串數組呼叫 popen,這將繞過 shell,或者您可以編寫emacs foo\\ bar將轉義您希望 Ruby 留給 shell 看到的反斜杠。

引用自:https://unix.stackexchange.com/questions/33939