Nie można cd do aliasu

22

Mam dwa aliasy w moim katalogu domowym: devbootcampi bookshelf. Nie mogę cdsię devbootcampjednak nie bookshelf, ale nie jestem pewien dlaczego. Nie pamiętam, jak utworzyłem alias, devbootcampale wykonałem ten samouczek, aby utworzyć bookshelfalias. Dziwnie też w moim terminalu devbootcampjest fioletowy, ale bookshelfnie jest. Jak to zrobić, aby miały taką samą funkcjonalność?

wprowadź opis zdjęcia tutaj

Mbigras
źródło
2
Co ls -lpokazuje
użytkownik151019
Włączanie cd'ing do aliasu: Jak przejść do aliasu z terminala?
klanomath
Jeśli chcesz uzyskać dostęp do aliasu w interfejsie CLI, ta wskazówka będzie pomocna.
z0nam

Odpowiedzi:

24

Jeśli próbujesz cduzyskać alias , to nie zadziała; jest to zaprojektowane, ponieważ alias działa na poziomie Findera, a nie na poziomie UNIX.

Niektóre kluczowe aspekty aliasów , dowiązań symbolicznych (dowiązań symbolicznych) i dowiązań twardych wyciągnąłem z artykułu „ Czym są aliasy, dowiązania symboliczne i dowiązania twarde w Mac OS X? ” Poniżej.


Skróty

Ten typ skrótu jest najstarszy dla komputerów Mac; jego korzenie sięgają wstecz do Systemu 7. Aliasy są tworzone i zarządzane na poziomie Findera, co oznacza, że ​​jeśli używasz terminala lub aplikacji innej niż Mac, takich jak wiele aplikacji i narzędzi UNIX, alias nie będzie praca. OS X wydaje się postrzegać aliasy jako małe pliki danych, którymi są, ale nie wie, jak interpretować zawarte w nich informacje.

Linki symboliczne

Ten typ skrótu jest częścią systemów plików UNIX i Linux. Ponieważ OS X jest zbudowany na systemie UNIX, w pełni obsługuje on dowiązania symboliczne. Dowiązania symboliczne są podobne do aliasów, ponieważ są małymi plikami zawierającymi nazwę ścieżki do oryginalnego obiektu. Ale w przeciwieństwie do aliasów, dowiązania symboliczne nie zawierają nazwy i-węzła obiektu. Jeśli przeniesiesz obiekt w inne miejsce, dowiązanie symboliczne zostanie zerwane, a system nie będzie mógł go znaleźć.

Twarde linki

Podobnie jak dowiązania symboliczne, dowiązania twarde są częścią bazowego systemu plików UNIX. Twarde linki to małe pliki, które podobnie jak aliasy zawierają nazwę i-węzła oryginalnego elementu. Ale w przeciwieństwie do aliasów i dowiązań symbolicznych, dowiązania twarde nie zawierają nazwy ścieżki do oryginalnego obiektu. Zwykle używasz twardego łącza, jeśli chcesz, aby pojedynczy obiekt pliku pojawiał się w wielu miejscach. W przeciwieństwie do aliasów i dowiązań symbolicznych nie można usunąć oryginalnego obiektu z dowiązaniem z systemu plików bez uprzedniego usunięcia wszystkich dowiązań do niego.

Co działa w Terminalu i Finderze

Wystarczy utworzyć dowiązanie symboliczne w terminalu

ln -s <path to some folder> <destination of link>

Na przykład na pulpicie utworzyłem dowiązanie symboliczne do mojego /Volumesfolderu

ln -s /Volumes /Users/allan/Desktop/Volumes

Na pulpicie dostałem tę ikonę automagicznie:

wprowadź opis zdjęcia tutaj

Możesz nawet nadać mu inną nazwę:

ln -s /Volumes /Users/allan/Desktop/Stuff

I automagicznie ...

wprowadź opis zdjęcia tutaj

Allan
źródło
Świetne wyjaśnienie. Pomogło mi to myśleć abstrakcyjnieln -s [what/dir] [to/where]
DaveWoodall.com,