Bisakah saya mengubah direktori ke drive Windows di Ubuntu Bash di WSL?

13

Saya seorang pemula super untuk Ubuntu dan pada dasarnya membutuhkan Ubuntu untuk paket Python. Saya ingin menjalankan file Python di katakan e:/username/folder1/folder2/python.py. Saya mencoba setiap metode online dan satu-satunya jawaban adalah bash: cd./e: No such file or directory. Saya tidak yakin apakah itu karena bash windows atau virtualenv.

Ketika saya menggunakan bash di Ubuntu di Windows,, lskatanya VIRTUALENV_DIR. cd, katanya /home/username. The cd ..dll mengubah direktori sedikit, tapi tidak drive lain, atau folder saya ingin untuk menemukan.

Stephanie
sumber

Jawaban:

22

WSL menyimpan drive Windows Anda di /mntfolder, dengan nama drive sebagai subfolder. Misalnya C:\drive Anda akan hadir /mnt/c/untuk Anda gunakan.

Dengan mengingat hal ini, Anda dapat bertukar ke folder spesifik Anda seperti:

cd /mnt/e/username/folder1/folder2
Kaz Wolfe
sumber
1
Yakin ingin ke cdfile? sepertinya cd /mnt/e/username/folder1/folder2/lebih masuk akal
dufte
@ Dufte Tangkapan bagus. Yay untuk copy-paste!
Kaz Wolfe
untuk ubuntu 16.04, ia berada di dalam folder / media
solfish
3

Ya, Anda bisa melakukannya. Saya menggunakan shift+ klik kanan untuk mendapatkan "Buka Powershell di sini" direktori mana pun yang Anda ingin bash dan jalankan perintah 'bash', kemudian jalankan seperti biasa nikmati. Ini sama dengan menggunakan bash Ubuntu karena menggunakan paket Python yang sama di Windows Powershell setelah menggunakan perintah 'bash'.

Catatan: Di windows 10 pembaruan terbaru mungkin April 2018 dengan mode WSL dan pengembang diaktifkan.

Sarang
sumber
1

Di windows explorer, navigasikan ke e:/username/folder1/folder2/,

ketik bashdan tekan Enterdi bilah alamat, sebuah bashjendela dengan path di e:/username/folder1/folder2/akan muncul.

Ini juga berfungsi dengan perintah cmd.

Referensi

Animeta
sumber
0

Anda dapat mencoba melakukan ini: cd E:/username/folder1/folder2/ dan kemudian jalankan python python.py. Itu selalu berfungsi dalam kasus saya di mesin Windows menjalankan bash.

Mohit Singh
sumber
0

dengan skrip kecil ini Anda dapat menjalankan setiap perintah dari direktori tempat Powershell Anda saat ini. Ini hanya berfungsi jika drive sudah dipasang ke / mnt / di subsistem. Itu tidak bekerja dengan sumber daya jaringan.

function tux {$dl = (pwd).Path | wsl eval "cut -c 1 | tr 'A-Z' 'a-z'"; $wd = (pwd).Path | wsl eval "cut -d : -f 2 | tr '\\' '/' 2> /dev/null" ; wsl eval "cd '/mnt/$dl$wd' && eval '$args'"}

setelah Anda menjalankannya, Anda dapat menggunakannya seperti ini:

tux vim test.txt
pt1997
sumber