Chci vytvořit symbolický odkaz jen pro pohodlí (nechci psát dlouhou cestu), takže když udělám něco jako:
ln -s /foo/bar/baz ~/baz
cd baz
Všechny příkazy, které spustím, když jsem v ~/baz
poběží úplně stejně, pokud jsem v /foo/bar/baz
?
Přijatá odpověď:
Téměř… cd
a pwd
příkazy se budou chovat, jako byste byli v ~/baz
(ačkoli můžete cd
do podadresářů /foo/bar/baz
uvnitř ~/baz
, když cd ..
budete v ~
)
Všechny ostatní příkazy se budou chovat, jako byste byli ve skutečném adresáři a všechna oprávnění budou zachována (samozřejmě – proto říkáme, že symbolické odkazy mají „fiktivní oprávnění“).
To zahrnuje (potenciálně matoucí) příkazy s relativními cestami, které sahají mimo adresář. S výjimkou cd
, který vás považuje za v ~/baz
, musíte se ujistit, že je používáte, jako byste byli ve skutečném adresáři, nikoli jako symbolický odkaz. Například pokud chcete ls
obsah /foo/bar
, v ~/baz
můžete udělat ls ..
a pokud byste chtěli symbolicky propojit soubor v foo/bar
v /foo/bar/baz
(říkejme tomu kitten
) a poté uvnitř ~/baz
můžete udělat ln -s ../kitten kitten