Объединить строку и переменную в строку в applescript

Мне нужно написать Applescript для автоматической установки папки в зависимости от пользователя. Редактор Applescript выдает эту ошибку.

После этого идентификатора конец строки не может быть.

Вот часть script, которая выбрасывает ошибку.

try
    set short_name to do shell script "whoami"
    set path to "afp://fileserver.local/Faculty/" & short_name
    mount volume path as user name short_name
end try

Ответ 1

path не может быть именем переменной.

try
    set short_name to do shell script "whoami"
    set p to "afp://fileserver.local/Faculty/" & short_name
    display dialog p
end try

Прекрасно работает.

Ответ 2

Я согласен с Бертраном, ваша проблема заключается в использовании "пути" в качестве переменной. Некоторые слова имеют особое значение для applescript и не могут использоваться как переменная, путь является одним из них. Вы заметите, что при компиляции кода этот путь не станет зеленым, как другие переменные, указывающие на его особенность.

Если вы все еще хотите использовать "путь" в качестве переменной, вы можете это сделать. В applescript вы можете поставить "|" вокруг переменной, чтобы указать на applescript, что это переменная. Так что это сработает.

try
    set short_name to do shell script "whoami"
    set |path| to "afp://fileserver.local/Faculty/" & short_name
    mount volume |path| as user name short_name
end try

Обратите внимание, что с помощью этой техники вы можете иметь одну переменную в нескольких словах, например...

set |the path| to "afp://fileserver.local/Faculty/" & short_name

Один последний комментарий... есть метод applescript, чтобы получить короткое имя пользователя человека...

set short_name to short user name of (get system info)