Что означает этот символ?:~
Я видел, как он появляется, когда будут установлены некоторые компоненты, такие как:
php ~/composer.phar require cboden/ratchet
или когда я делаю компакт-диск в корне:
analistasistemas-VirtualBox / # cd
analistasistemas-VirtualBox ~ #
Как называется символ?
~
— это символ, называемый тильдой , который в операционных системах UNIX относится к значению переменной$HOME
, то есть каталогу пользователя, вошедшего в систему.Это позволяет вам обращаться к этому каталогу напрямую, без необходимости писать
/home/usuario/
каждый раз.Если вы посмотрите файл
/etc/passwd
, там вы увидите, как он определяется для каждого из пользователей. Обычно это так/home/nombre_de_usuario
, хотя для негоroot
обычно/
:Что ж, когда Bash (или другая оболочка, как это определено в POSIX ) читает
~
из кавычек, она автоматически расширяет его на значение, в котором оно находится/etc/passwd
для пользователя, выполняющего его.Поэтому в вашем конкретном случае, говоря:
Что будет сделано:
«~» — это абсолютный путь пользователя, которого вы используете, т. е. домашняя папка пользователя, с которым вы вошли в систему.
Например, я вхожу в систему с пользователем: foo, если я поставлю
это то же самое, что поставить
когда вы делаете «cd» в корне, он автоматически добавляет «cd». если вы сделаете «ls -a», вы увидите, что есть каталог (символический), который говорит «./», который указывает на каталог, в котором вы находитесь.
это то же самое, что поставить
И другое дело поведение PS1 (подскажите), если хотите узнать больше о PS1 оставляю ссылку здесь .
В Bash
~
или «тильда» (на английском языке) — это специальный символ, который чаще всего используется для краткого указания специальной папки$HOME
, соответствующей домашнему каталогу пользователя. Когда мы делаем что-то вроде этого:cd ~
если мы пользователь,pedro
мы обязательно окажемся в/home/pedro
. Это использование настолько распространено, что упускается из виду, что это~
функция Bash для расширения имени папки с несколькими вариантами использования, хорошо задокументированная в Tilde Expansion .Некоторые виды использования:
~
--> значение$HOME
~/foo
-->$HOME/foo
~fred/foo
--> Подпапкаfoo
в папке$HOME
пользователяfred
.~+
-->$PWD
Текущий каталогBash имеет стек, в котором зарегистрированы папки, в которых мы просматривали, мы можем использовать
~
этот стек для навигации (см. командуdirs
):$OLDPWD
Предыдущий каталог, в котором мы были'dirs +1'
(следующий каталог в стеке)'dirs -1'
(предыдущий каталог в стеке)Это путь к домашней папке вашего пользователя (которая обычно доступна через переменную окружения $HOME).
Например, если ваше имя пользователя «pepe», его домашняя папка будет находиться в /home/pepe, и при вводе
cd ~
вы попадете в эту папку.Следует помнить, что папка суперпользователя (корневая) находится не в /home/root, а непосредственно в корне вашей системы, то есть в /root.
Это путь относительно личной папки пользователя.
Например:
означает путь к домашней папке пользователя ~
если у нас в консоли есть что-то вроде:
если вы выполните
pwd
его, он вернет маршрут/home/miuser
, так как вы размещаете маршрут пользователяНапример, если вы находитесь в папке x и хотите вернуться в папку пользователя, вы можете запустить ее с помощью команды:
это относится ко всем пользователям, он будет искать папку пользователя, с которым вы работаете, с некоторыми различиями в корне , если у вас нет этой папки
Это может немного отличаться для пользователя root , это вернет вас к пути
/root
теперь, если вы сомневаетесь, по какому именно маршруту он пойдет, выполните следующую команду
он вернет маршрут, который указывает
ПРИМЕЧАНИЕ ~ — это символ тильды, который в операционных системах Linux был бы аббревиатурой для /home/tu-user или / (root)
Если вы наберете в консоли ~ (AltGr + 4) от пользователя root, он покажет вас на экране
либо
если вы делаете это от своего обычного пользователя
Поэтому ваша строка:
Это было бы так же, как если бы вы написали:
и в случае
было бы то же самое, если бы вы написали
в любом случае напишите в своей консоли ~ с любого пути, а затем дайте ему pwd, и он покажет вам дом вашего пользователя