Расположение .bashrc для Bash в Ubuntu в Windows в Windows 10

Microsoft только что представила подсистему Linux в своей Windows 10 Anniversary Edition. Установка довольно проста, но я не смог найти файлы bash в Windows.

Как это работает? Что означает ~ в Windows? Где найти .bashrc?


person Meet Taraviya    schedule 26.11.2016    source источник
comment
Просто примечание: обязательно используйте разрывы строк Linux при редактировании .bashrc   -  person Vadzim    schedule 28.09.2019


Ответы (6)


После обновления Windows 10 Fall Creators Update местоположение изменилось на:

C:\Users\USERNAME\AppData\Local\Packages\{DIST}\LocalState\rootfs\home\{LINUXUSER}\

Где:

  • {DIST} равно CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
  • {LINUXUSER} — это пользователь, для которого вы ищете файл .bashrc.

Просто для тех, кому интересно, что пришло сюда из Google.

person ncw    schedule 09.03.2018
comment
`C:\Users\USERNAME\AppData\Local\Packages\{DIST}\LocalState\rootfs\home` Эта папка кажется пустой - person quantumbutterfly; 07.04.2019
comment
@quantumbutterfly Он должен быть там, если вы установили его после обновления Fall Creators. Если вы установили его до этого, он все еще может быть в той папке, в которой он был тогда. - person micka190; 11.04.2019
comment
Его не было даже в обновлении Fall Creators, но я решил его, создав нового пользователя Linux с помощью bash. - person quantumbutterfly; 14.04.2019

Извините за недоразумение, я проверил в Google, и это будет C:\Users\USERNAME\AppData\Local\Lxss\home\USERNAME .

Я попробовал, и это работает, в cmd просто введите cd\ && dir *bashrc* /s, он найдет файл, и в моем случае я вижу строку C:\Users\USERNAME\AppData\Local\Lxss\home\USERNAME, но когда я хочу перемещаться по ней с помощью оконного браузера, это не работает, но если вы скопируете и вставите его , оно работает :-)

Я нашел его здесь.


Учитывая, что вам нужно знать, где находится файл, вы можете использовать команду find.
Синтаксис команды: find {search-path} {file-names-to-search} {action-to-take}по умолчанию выполняется печать имени файла.
Итак, если вы нашли файл .bashrc, вы можете использовать find / -name .bashrc, bash вернет вам /home/yourusername/.bashrc

Кроме того, если вы хотите получить доступ к своему домашнему каталогу, вы можете использовать cd ~
Надеюсь, мой ответ будет полезен :-)

person BinaryDump    schedule 29.11.2016
comment
извините за -1, я новичок на этом сайте. На моем компьютере путь C:\Users\ИМЯ ПОЛЬЗОВАТЕЛЯ\AppData\Local**lxss**\home\ИМЯ ПОЛЬЗОВАТЕЛЯ, а не C:\Users\ИМЯ ПОЛЬЗОВАТЕЛЯ\AppData\Local**Lxss**\home\ИМЯ ПОЛЬЗОВАТЕЛЯ - person Meet Taraviya; 03.12.2016
comment
Моя репутация слишком низка, чтобы повлиять на общедоступный рейтинг. Возможно, ваш ответ был отклонен кем-то другим. Я уже поставил вам +1. Кроме того, команда, которую вы дали, не сработала для меня. Он зависает после поиска в некоторых каталогах и показывает множество ошибок «Отказано в доступе». - person Meet Taraviya; 03.12.2016
comment
Хо ок, без проблем :) - person BinaryDump; 03.12.2016
comment
@MeetTaraviya: оболочки Windows (cmd.exe, PowerShell) и Windows API нечувствительны к регистру по отношению к файловой системе, поэтому разница в регистре, на которую вы указываете, не имеет практического значения. - person mklement0; 07.04.2017
comment
Прежде всего, не изменяйте файлы Linux с помощью Windows (как описано здесь blogs.msdn.microsoft.com/commandline/2016/11/17/). Если вы действительно хотите найти файл, проверьте Параметры Проводника -> Показать скрытые файлы, папки и диски. Путь не скрыт, а также учтите, что Lxss дополнительно скрыт. - person Riga; 09.11.2017
comment
Таким образом, файлы Windows не могут быть доступны из bash. Я понимаю, что это не по теме в контексте вашего вопроса, но для тех, кто читает это позже, вы можете получить доступ к файлам Windows в WSL. Например, содержимое вашего диска C должно быть найдено в /mnt/c. - person ZenoArrow; 24.06.2019

~ означает, что это домашняя папка пользователя, например /home/%username%/

вы можете перечислить такие файлы, как ls -al, и увидеть файл .bashrc.

person James M    schedule 28.11.2016
comment
см. мой комментарий к ответу BinaryDump - person Meet Taraviya; 03.12.2016

просто введите vi ~/.bashrc

и это должно поместить вас в файл, где бы он ни был. Вы можете перейти туда, просто выполнив cd ~ Список всех файлов с помощью ls -a, и вы сможете его увидеть.

person Jhirschibar    schedule 29.08.2020
comment
Если вы когда-либо использовали git bash, у вас, вероятно, будет другой файл .bashrc в любом каталоге, в котором будет запускаться эта оболочка. Однако, как только вы начнете использовать wsl, файл Ubuntu .bashrc будет находиться в другом месте, гораздо ближе к истинному корню. Следовательно, вам нужно использовать ~, чтобы попасть в домашний каталог Ubuntu. - person Jhirschibar; 10.09.2020

Прямо сейчас на WSL 2 вы можете найти его под /home/{user_name}, и файл скрыт.

Вы можете получить к нему доступ из консоли Ubuntu с помощью {text_editor} .bashrc

Если вы хотите отредактировать это в Windows, просто введите в консоли Ubuntu explorer.exe ., и она откроет текущую папку и покажет все скрытые файлы. Это странно, но работает нормально.

person Adam Tomaszewski    schedule 13.10.2020

Я нахожу свой файл .bashrc в:

/home/your_user_name

вы можете запустить cd /home/your_user_name или cd ~ тоже должно работать

Если вы ранее установили git bash для окна, вы также можете найти файл .bashrc в папке своего профиля пользователя окна. В подсистеме Linux вы можете локализовать файл под /mnt/c/Users/your_window_user_name/.bashrc Однако изменение этого файла работает только для git bash в окне, но не для терминала оболочки подсистемы Linux.

Примечание: моя установка Ubuntu — 20.04 LTS прямо из оконного магазина.

person Anthony Lei    schedule 09.07.2020