CD к символьной ссылке, то же к CD к исходной папке?

Я хочу создать символьную ссылку только для удобства (я не хочу тип длинный тракт), поэтому если я делаю что-то как:

ln -s /foo/bar/baz ~/baz
cd baz

Все команды, которые я выполняю, в то время как я нахожусь в ~/baz выполнит точно тот же путь, если я буду в /foo/bar/baz?

3
задан 12 October 2017 в 08:09

1 ответ

Почти... cd и pwd команды будут вести себя, как будто Вы находитесь в ~/baz (хотя Вы можете cd к подкаталогам /foo/bar/baz внутри ~/baz, когда Вы cd .. Вы будете в ~)

Все другие команды будут вести себя, как будто Вы были в реальном каталоге, и все полномочия будут сохранены (конечно - вот почему мы говорим, что символьные ссылки имеют "фиктивные полномочия").

Это включает (потенциально смутно) команды с относительными путями, которые расширяются вне каталога. За исключением cd, который полагает, что Вы находитесь в ~/baz, необходимо удостовериться, что Вы используете их, как будто Вы находитесь в реальном каталоге, не символьной ссылке. Например, если Вы хотели ls содержание /foo/bar, в ~/baz Вы могли сделать ls .. и если Вы хотели к символьной ссылке файл в foo/bar в /foo/bar/baz(давайте назовем его kitten) затем внутри ~/baz Вы могли сделать ln -s ../kitten kitten

2
ответ дан 1 December 2019 в 16:57

Другие вопросы по тегам:

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