我從Java應用程序啓動bash,並在我的路徑中執行內部bash空間內的命令 (示例cd/Documents and Settings/test),我使用Process Builder運行命令,但當path有空格時它不起作用。我嘗試用%20替換空格,但沒有幫助。該怎麼辦 ?用什麼替換路徑中的空格字符?
3
A
回答
8
您可以封裝在quotion標誌的完整路徑是這樣的:
String quoted = "\"" + pathString + "\"";
,或者你使用bash,轉義空格:
String escaped = pathString.replace(" ", "\\ ");
兩個應該作爲一個參數工作,你的cd
命令。
4
封裝報價之間的整個路徑。
cd "/Documents and Settings/test"
3
使用%20這裏是無稽之談,它不是URL。使用String []或List []而不是String,然後您可以將空格保留原樣,沒有更多的cmd行參數在那裏分開。
所以,你可以使用
"cd", "/Documents and Settings/test"
然而,這並沒有什麼意義的shell命令。當你開始一個新的過程時,你不能以這種方式改變Java的工作目錄。你可能想編寫一個shell腳本(批處理文件)並從Java中調用它。
3
您需要運行一個從bash提示符起作用的命令。例如cd /文件和設置/不會。嘗試使用cd C:Documents\ and\ Settings
。
注意:bash要求您在開始時使用C:來訪問此文件夾。在開始時使用/將會爲您提供cygwin的虛擬根。
相關問題
- 1. 替換「空格的字符
- 2. 替換空格字符
- 3. 替換路徑URL佔位符格式
- 4. 字符串:用數字替換空格
- 5. 替換字符串中的空格
- 6. 用單個空格替換字符串中的多空格 - Python
- 7. 如何用emacs中的換行符(LF)替換空格字符?
- 8. ajax - 爲什麼jquery用空格(「」)替換「+」?
- 9. 用空格替換字符串中的字符
- 10. 如何用「%20」替換字符串中的空格字符?
- 11. 用單個空格替換字符串中的多個字符
- 12. 用空格替換特殊字符
- 13. 用空格替換HTML字符串
- 14. javascript - 用字符串替換空格
- 15. 如何用連字符替換空格?
- 16. XSLT用空格替換非ASCII字符
- 17. 用空格替換字符串
- 18. 用空格替換字符串
- 19. 用URL中的代字符替換用戶路徑
- 20. 如何用「\ /」使用sed替換路徑字符串中的「/」?
- 21. 使用字符串替換空格後跟帶空格的文本替換
- 22. 用一個空格字符替換連續的空格
- 23. 替換空格,字符串中的空格
- 24. Oracle REGEXP_REPLACE用空字符串替換中間的空格
- 25. 替換字符串空格的策略
- 26. 用groovy文件中的字符串替換XML路徑
- 27. 使用sed替換文件中的所有路徑字符串
- 28. 我應該使用什麼路徑格式與bitmapfactory.decodeFile(字符串路徑名)?
- 29. 替換字符串中的字符序列無空格 - java的
- 30. 用python中的字母替換空格
您需要運行一個從bash提示符起作用的命令。例如cd /文件和設置/不會。試試`cd C:Documents \ and \ Settings`。 – 2011-01-20 12:16:45
@Peter Lawrey:請將其發佈爲答案,而不是評論。 – Barend 2011-01-20 12:18:29