Где находится cd ~ в Ubuntu?

К сожалению, прямого решения не существует, вот несколько идей.:Как использовать.vimrc, когда я использую SSH?

-1
26.03.2020, 13:29
4 ответа

Обычно в Linux это /home/<your-username>/. Вы можете увидеть путь к текущему каталогу, если введете pwd, находясь в нем.

2
19.03.2021, 02:32

Обычно переменная среды HOMEсообщает вам, какой домашний каталог установлен для любого пользователя, вошедшего в систему.:

echo $HOME

Однако, если переменная HOMEне установлена ​​(изinfo bash):

If 'HOME' is unset, the home
directory of the user executing the shell is substituted instead.

Дополнительную информацию о Tilde Expansion можно найти в руководстве info bash.

5
19.03.2021, 02:32

cd ~открывает ваш домашний каталог. По умолчанию домашний каталог определяется информацией, хранящейся в базе данных «passwd» (, обычно /etc/passwdв базовых настольных системах, но центральные базы данных часто используются в корпоративных установках ). Однако в оболочкеcd ~cdбез аргумента)смотрят на значение переменной HOME, поэтому домашний каталог пользователя может быть переопределен (в отношении оболочки )путем изменения этой переменной. Переменная HOMEинициализируется для указания на домашний каталог пользователя . Если HOMEне установлено, cd ~вернется к домашнему каталогу по умолчанию (, а cdзавершится ошибкой, по крайней мере, в bash ).

Канонический способ определить домашний каталог данного пользователя перед входом в систему — использоватьgetent:

getent passwd user

покажет запись пользователя userв базе данных, а домашний каталог — шестое поле:

getent passwd user | cut -d: -f6
7
19.03.2021, 02:32

Практически во всех снарядах (, например. *sh, *csh, *ksh), ~— это ярлык для домашнего каталога текущего пользователя .

Многие оболочки используют переменную окружения HOMEдля «кэширования» положения домашнего каталога. Начальное значение HOMEсчитывается из файла /etc/passwd.

Как сказал @Time4Tea, лучший способ проверить текущую позицию ~— напечатать переменную HOME. Например. echo $HOME.

Помните, что значение этой переменной зависит от пользователя и что пользователь может изменить его, если ему нужно.

И последнее, но не менее важное: оболочки обычно также поддерживают ярлыки ~username. Например. ~andcoz— это мой (andcoz )дом, а не дом текущего пользователя.

1
19.03.2021, 02:32

Теги

Похожие вопросы