私はJavaアプリケーションからbashを起動します。私はパスの中にbashスペースを実行するコマンドを持っています (例cd/Documents and Settings/test)、プロセスビルダでコマンドを実行します。私はスペースを%20で置き換えようとしていますが、助けません。何をすべきか ?パスの空白文字を何に置き換えますか?
3
A
答えて
8
あなたはこのようquotionマークにフルパスをカプセル化することができますいずれか
String escaped = pathString.replace(" ", "\\ ");
は両方の引数として動作するはずですあなたcd
コマンド
4
引用符間のパス全体をカプセル化します。
cd "/Documents and Settings/test"
3
ここで%20を使用するのはナンセンスですが、URLはありません。 Stringの代わりにString []またはList []を使用すると、スペースをそのまま残すことができます。
だから、しかし、これはシェルコマンドとして意味をなさない
"cd", "/Documents and Settings/test"
を使用することができます。このようにJavaの作業ディレクトリを変更することはできません。新しいプロセスを開始するときです。シェルスクリプト(バッチファイル)を作成してJavaから呼び出すことができます。もしbashを使用して、スペースをエスケープし、
String quoted = "\"" + pathString + "\"";
のか:
+0
+1は、 'プロセス'を使って 'cd'コマンドを実行しても効果がないことを指摘しています。 –
3
bashプロンプトから動作するコマンドを実行する必要があります。例えばcd/Document and Settings /は表示されません。試してcd C:Documents\ and\ Settings
があります。
注:このフォルダにアクセスするには、最初にC:を使用する必要があります。ちょうど/を最初から使用するとcygwinの仮想ルートが得られます。
関連する問題
- 1. 文字列をコード行の空白に置き換えます
- 2. すべての空白文字を置き換えます。
- 3. Javascript文字を空白に置き換える
- 4. Swift - 文字列中の絵文字を空白に置き換える
- 5. Elasticsearch char_filterは任意の文字を空白で置き換えますか?
- 6. 特殊文字を正規表現で空白に置き換えます
- 7. Awkはn番目の文字を空白の値で置き換えます
- 8. 特定の文字の周りの空白を置き換えるには?
- 9. rails文字列のパスを置き換えます。
- 10. 何かを文字列とsedに置き換えます-e
- 11. 文字列の一部を空白で置き換える正規表現
- 12. アルファベット以外の文字を空白で置き換える正規表現
- 13. nullセルを0または空白に置き換えます。
- 14. Vimはコピー時に空白をタブで置き換えます。
- 15. Javascript空の文字列で特殊文字を置き換えます。
- 16. C#で空白または空文字列の値を置き換える/変更する
- 17. Pythonは奇数の空白を "_"で置き換えます
- 18. 文字列を別の文字列に置き換えます
- 19. 空白で1文字を残して複数の文字を置き換える正規表現
- 20. regexは任意の空白で置き換えます
- 21. C++で文字列の空白を%20で置換する
- 22. 文字列をユニコード文字に置き換えます
- 23. 文字列をベクトル文字列に置き換えます。
- 24. 文字列を特殊文字用に置き換えます。
- 25. いくつかのコードをPHPの空白スペースに置き換えます
- 26. PHPのXXXXX文字列の文字を置き換えます
- 27. 空の文字列を配列のPHPでnullに置き換えます
- 28. 空の文字列をDataFrameのNone/Null値に置き換えます
- 29. Javascript文字列内のutf文字を置き換えます
- 30. 文字列Cの制御文字を置き換えます。
bashプロンプトから動作するコマンドを実行する必要があります。例えばcd/Document and Settings /は表示されません。 'cd C:Documents \と\ Settings'を試してください。 –
@Peter Lawrey:答えとして、コメントではなく投稿してください。 – Barend
@Barend、完了。 ;) –