Rubyで空白のファイルを開く

Rubyで空白のファイルを開く

Emacsが名前にスペースを含むファイルをプログラムで開く必要がある場合はどうすればよいですか?バックティックまたは次のいずれかを使用して、Rubyスクリプトで次のコマンドを試しましたpopen(…)

emacs "foo bar"

または

emacs foo\ bar

それぞれの名前fooと2つのファイルを開きますbar。しかし、名前があるものを開きたいですfoo bar

ベストアンサー1

シェルに渡されたコマンドラインを使用してpopenを呼び出しているため、引用に問題があります。 Rubyの文字列パーサーは二重引用符またはバックスラッシュを使用します。シェルをバイパスする文字列配列でpopenを呼び出すことも、emacs foo\\ barシェルが表示できるようにRubyが残したいバックスラッシュをエスケープするように書くこともできます。

おすすめ記事