К сожалению, прямого решения не существует, вот несколько идей.:Как использовать.vimrc, когда я использую SSH?
Обычно в Linux это /home/<your-username>/
. Вы можете увидеть путь к текущему каталогу, если введете pwd
, находясь в нем.
Обычно переменная среды 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
.
cd ~
открывает ваш домашний каталог. По умолчанию домашний каталог определяется информацией, хранящейся в базе данных «passwd» (, обычно /etc/passwd
в базовых настольных системах, но центральные базы данных часто используются в корпоративных установках ). Однако в оболочкеcd ~
(иcd
без аргумента)смотрят на значение переменной HOME
, поэтому домашний каталог пользователя может быть переопределен (в отношении оболочки )путем изменения этой переменной. Переменная HOME
инициализируется для указания на домашний каталог пользователя . Если HOME
не установлено, cd ~
вернется к домашнему каталогу по умолчанию (, а cd
завершится ошибкой, по крайней мере, в bash ).
Канонический способ определить домашний каталог данного пользователя перед входом в систему — использоватьgetent
:
getent passwd user
покажет запись пользователя user
в базе данных, а домашний каталог — шестое поле:
getent passwd user | cut -d: -f6
Практически во всех снарядах (, например. *sh
, *csh
, *ksh
), ~
— это ярлык для домашнего каталога текущего пользователя .
Многие оболочки используют переменную окружения HOME
для «кэширования» положения домашнего каталога. Начальное значение HOME
считывается из файла /etc/passwd
.
Как сказал @Time4Tea, лучший способ проверить текущую позицию ~
— напечатать переменную HOME
. Например. echo $HOME
.
Помните, что значение этой переменной зависит от пользователя и что пользователь может изменить его, если ему нужно.
И последнее, но не менее важное: оболочки обычно также поддерживают ярлыки ~username
. Например. ~andcoz
— это мой (andcoz )дом, а не дом текущего пользователя.