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.

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

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.


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


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.


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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.