Что значит `~ /`?

34

Я новичок в Linux и Ubuntu. Люди продолжают использовать ~/filenameв своих ответах на мои вопросы. Что ~/значит?

andrewsomething
источник

Ответы:

42

~/является сокращением для домашней папки текущего пользователя. Так что если ваше имя пользователя "foobar", оно расширяется до/home/foobar/

andrewsomething
источник
8
И если вы хотите сослаться на другой userдомашний каталог, вы можете использовать ~user, как в ls -l ~enzotib/Documents/.
энзотиб
2
На самом деле, ~это сокращение для домашней папки текущего пользователя :)
heartsmagic
1
Я не сказал недействительным :) Вообще-то мы видим ~вместо ~/, так /как там не нужно.
heartsmagic
8
Это только обычно правильно, но не технически правильно. ~фактически расширяется до значения переменной среды HOME. Если вы измените значение HOME, ~также больше не будет указывать на домашний каталог этого пользователя.
Кодзиро
1
Там нет места, как ~
Фун
5

Важно то, что если вы используете привилегированный пользователь, ~/будет /rootкаталог, а не /home/user_name.

В этом случае выполните:

> cd ~/ ; pwd ;

Это выйдет:

> /root
Лукас Аморим Сильва
источник
Это является прямым результатом того факта, что /rootв вашей /etc/passwdтаблице указан домашний каталог пользователя root . Это не особый случай.
Томасруттер
2

В целом тильда ~ представляет вашу домашнюю папку. Используйте его для ссылки на ваш домашний каталог в командной строке.

haziz
источник