Как создать псевдоним Macintosh Finder из командной строки?
Я пытаюсь создать псевдоним Finder из командной строки или из программы Python. Я искал в интернете[1] [2] [3] и нашел этот бит applescript:
$ osascript -e 'tell application "Finder" to make new alias at POSIX file "/Users/vy32/cyber.txt" to POSIX file "/Users/vy32/a/deeper/directory/cyber.txt"'
к сожалению, это дает мне эту ошибку:
29:133: execution error: Finder got an error: AppleEvent handler failed. (-10000)
[1] http://hayne.net/MacDev/Bash/make_alias
[2] https://discussions.apple.com/thread/1041148?start=0&tstart=0
[3] http://hintsforums.macworld.com/showthread.php?t=27642
что я делаю не так?
4 ответов
о вашем сообщении, попробуйте посмотреть консоль.приложение. Может быть исходный файл не существует. Это помогает мне, когда я пытаюсь сделать приложения Xcode 4.3+ видимыми. Я нашел рабочий код:
$ osascript -e 'tell application "Finder" to make alias file to POSIX file "/file/to/make/link/from" at POSIX file "/folder/where/to/make/link"'
например:
$ osascript -e 'tell application "Finder" to make alias file to POSIX file "/Applications/Xcode.app/Contents/Applications/OpenGL ES Performance Detective.app" at POSIX file "/Users/mylogin/Applications"'
для всех, кто борется с AppleEvent handler failed
ошибка:
make alias
не работает ln -s
, вам не нужно указывать пункт назначения , вы должны указать пункт назначения каталог, имя файла псевдонима-это имя исходного файла/папки.
пример:
tell application "Finder" to make alias file to (POSIX file "/Applications/Mail.app") at (POSIX file "/Users/leandros/Desktop")
этот подход работает из командной строки:
osascript -e 'tell application "Finder" to make alias file to alias "imac:Users:vy32:current:cyber.txt" at "imac:Users:vy32:foobar"'
здесь foobar
- это каталог в моем homedir.
рабочая команда в Applescript:
tell application "Finder"
make new alias at POSIX file "/Path/to/location" to POSIX file "/Path/to/file.ext"
end tell
добавить соль по вкусу.