2017-02-06 63 views
2

保持Windows 10路徑和Windows上的'Bash on Windows(WSL)'路徑同步的最佳方式是什麼?保持Windows與'Windows上Ubuntu'Bash之間的路徑同步

我已將Windows 10路徑(將其轉換爲兼容bash)附加到.bashrc,但bash外殼似乎沒有選擇它。

步驟我把:

  1. 獲取Windows路徑>回聲%PATH%
  2. 選擇相關路徑,並轉換爲 bash的兼容(如C:\的Java變成的/ mnt/C/Java的)
  3. 啓動慶典&編輯的.bashrc
  4. 追加對.bashrc中例如> 出口PATH = $ {PATH}:/斌:到/ mnt/C/Java的/ bin中:到/ mnt/C /節點
+1

我可以問問你這樣做有什麼意義嗎?無論如何,你無法從Ubuntu運行Windows可執行文件。說了這些之後,我不會在bash中進行轉換,而是用具有更好字符串處理能力的語言(Ruby,Perl,....)編寫輔助程序。如果你想在bash中做到這一點,我建議你用分號拆分Windows路徑,分別轉換每個路徑組件,然後再用冒號作爲分隔符再次連接路徑。 – user1934428

+3

@ user1934428自內部版本構建14951以來,您已經能夠從Bash內部調用Windows應用程序:https://blogs.msdn.microsoft.com/commandline/2016/10/19/interop-between-windows-and-bash/ –

回答

3

內幕作爲建設145963(ISH),你不需要附加在你的.bashrc Windows路徑:

在隨後的版本,並且從創作者更新起,WSL自動添加到您的猛砸Windows路徑路徑,允許您從Bash內啓動Windows可執行文件,而無需將絕對文件夾位置輸入路徑上的可執行文件。

例如,瀏覽到一個臨時文件夾C:驅動器,創建一個文本文件,用記事本打開它:

$ cd /mnt/c/temp 
$ echo Hello > hello.txt 
$ Notepad.exe ./hello.txt 

提示:不要忘了.exe擴展 - 這就是告訴Linux請求WSL啓動.exe

+0

最後一個問題請問:如果我使用[將會安裝某些東西並修改路徑的東西] dpkg或linuxbrew放在bash中,是否會反映PATH變回Windows,還是我必須複製粘貼它?我問,因爲對於一些開發項目,我所得到的是一個非常複雜的設置,帶有一千個標誌「不知道是否可以在windows下工作」,然後「或者只是使用我的自制腳本...」。謝謝! – simlei

+0

否 - 您的Linux路徑不會暴露給Windows - 只能反過來;你的Windows路徑被追加到Bash中的Linux路徑中。您應該避免通過Windows工具導航到Linux文件系統。相反,如果要跨Windows-Linux邊界共享文件,請從Bash訪問Windows文件 –

相關問題