Как получить доступ к папкам Windows из Bash в Ubuntu в Windows

133

В приложении Bash on Ubuntu для Windows у меня есть только

root@localhost:~# ls -a
    .bash_history  .bashrc  .profile

Как получить доступ ко всем папкам Windows, таким как «Документы», «Загрузки» и т. Д.?

Сергей Уоллес
источник

Ответы:

213

Вы найдете C:\структуру Windows /mnt/c/в среде Bash.

Поэтому моя папка «Документы» находится в /mnt/c/Users/Ben/Documents/.

Бен Н
источник
почему mnt не появляется с ls -a?
Сергей Уоллес
4
Вы были в ~каталоге, ваш дом в среде Bash, которая не является root ( /). Если бы вы сделали cd /сначала, вы бы увидели mnt.
Бен N
Когда речь идет о создании сценариев, второе предложение не обязательно следует из первого. Windows позволяет перемещать папку с документами повсюду. Было бы неплохо иметь возможность читать эту информацию из реестра Windows или подобного при использовании bash.
Джоэл Коухорн
1
как я могу получить доступ к материалам за пределами C? например, я подключил телефон через MTP, и его файлы отображаются по пути «This PC \ PhoneName»
Michael
1
@Michael К сожалению, MTP-устройства очень отличаются от обычных файловых систем. Они даже недоступны из обычной командной строки , поэтому я не знаю, как получить к ним доступ из BoUoW.
Бен N
23

В качестве альтернативы ,

  1. Удерживая Shiftто время как щелчок правой кнопкой мыши на нужном каталоге Windows ,
  2. Выберите « Открыть окно PowerShell здесь »

Контекстное меню PowerShell

  1. Как только вы в PowerShell, введите bash

Вы сможете напрямую использовать любые команды Bash для работы с файлами и папками в этом каталоге Windows. Используя этот метод, вам не нужно вручную заходить cdв каталоги, особенно если у вас есть глубоко укорененный каталог для доступа.


Обновление от Windows 10 1809:

Выше все еще работает, но теперь есть более простой способ.

  1. Удерживая Shiftто время как щелчок правой кнопкой мыши на нужном каталоге Windows ,
  2. Выберите « Открыть оболочку Linux здесь »
Кит ОЙС
источник
1
В контекстном меню, которое щелкнуло правой кнопкой мыши, я не вижу здесь пункта для окна Open PowerShell
Yu Shen
1
да, то же самое здесь .....
Максим Князев
@YShen Убедитесь, что у вас установлено последнее обновление для Windows 10. Например, текущая версия - 1803, и у нее есть опция. Я понимаю, что некоторые машины, которые не были обновлены, все еще имеют CMD по умолчанию и, следовательно, не имеют этой опции в контекстном меню.
Кит ОЙС
Это не работает, команды bash открываются в директории пользователя Ubuntu по умолчанию, а не в директории windows
curt
@mxdsp Каковы были ваши шаги и ваша версия Windows? Пожалуйста, опишите это для меня, чтобы я мог помочь вам в дальнейшем. Если вы сделали это правильно, вы попадете в ваш текущий каталог Windows. Не мудрое понижение голоса только потому, что оно не работает для вас.
Кит ОЙС