スペースを含むファイル名をシェルスクリプトに渡す

スペースを含むファイル名をシェルスクリプトに渡す

シェルスクリプトはとても簡単です。

retroarch $* -c /tmp/retroarch/Data/retroarch/gambatte.cfg

(「retroarch」は別のシェルスクリプトです)

渡されたファイル名にスペースが含まれていると失敗します。

RetroArch [ERROR] :: Could not read ROM file.

答え1

引用符を使用してください。

変える

yourcommand some file.name

使用

yourcommand "some file.name"

変数を使用するときも参照してください。

yourcommand "$filename"
yourcommand "$@"
...

答え2

通常、バックスラッシュ()を使用してスペースをエスケープするか、パスを一重引用符( ')または二重引用符( ")で囲む必要があります。

$ retroarch "$*" -c /tmp/retroarch/Data/retroarch/gambatte.cfg

関連情報