Chciałbym utworzyć skrót na pulpicie do określonego folderu głęboko w nim ukrytego ~/Library/
. Biblioteka jest domyślnie ukryta w programie Lion i chciałbym ją zachować z różnych powodów. Czy mogę wykonać jednoetapowe działanie w wierszu polecenia, aby utworzyć skrót na pulpicie do danej ścieżki? Chciałbym uniknąć rozwiązań polegających na odsłonięciu biblioteki, utworzeniu aliasu za pomocą Findera i ukryciu go. Wiem, jak to zrobić, ale dla moich celów lepsza byłaby pojedyncza linia, którą można wkleić do Terminala.
17
ln -s ~/Library/path/to/folder folder
. Jedną niewielką wadą tej metody (tj. Dowiązania symbolicznego) jest to, że łącze zostanie zerwane, jeśli „oryginał” (tj. Cel) zostanie przeniesiony lub zostanie zmieniona jego nazwa.folder
nie jest wymagany. Jeśli go pominiesz,ln
tworzy link o nazwie takiej samej jak oryginalny folder.Można to zrobić w jednej linii terminala. Załóżmy, że chcesz uzyskać alias do pliku „/Users/me/Library/Preferences/org.herf.Flux.plist”.
Należy wymienić
to file
zeto folder
jeśli masz folder.Oto skrypt powłoki, który pozwala przekazać ścieżkę do pliku lub folderu w celu utworzenia aliasu:
Jeśli nazwa tego skryptu
make-alias.sh
,chmod u+x make-alias.sh
i umieścić go w/usr/local/bin
, można uruchomić npmake-alias.sh ~/Library/Preferences
.źródło
~/Library/Preferences/org.herf.Flux.plist"
działać, czy też nazwa użytkownika musi być wyraźnie zawarta w poleceniu terminalu?~
i nie działa zosascript
poleceniem jednowierszowym. Sugeruję użycie zamiast tego pliku skryptu, ponieważ~
jest on konwertowany automatycznie./Library/Application Support/
~
to jednak rozszerzeniu. Najlepiej nie używać cudzysłowów i wstawiać do nazwy pliku tab, aby bash poprawnie „uciekł” od znaków specjalnych. Np. Wpisz,~/Library/Application
a następnie naciśnij tab. JeśliApplication Support
było to jedyne dopasowanie, powłoka powinna wstawić ukośnik przed spacją. Możesz także ręcznie użyć odwrotnego ukośnika, aby uciec.Jeśli chcesz skierować link do określonego folderu (lub nadać mu konkretną nazwę), możesz użyć
set name of result to "…"
jak wźródło
źródło
Dla osób, które chciałyby rozwiązania w języku Python, oto funkcja owijania skryptu apple, a następnie wywoływania subprocess.call:
źródło