Предположение, основанное на опыте ... Возможно, пробел в пути является вашим ограничителем показа.
Попробуйте вызвать сценарий из места, где путь не имеет пробелов, или попробуйте «дважды убежать» из пробела, вот так:
"tell application \"Terminal\" to do shell script \"/System/Library/CoreServices/Menu\\\\ Extras/user.menu/Contents/Resources/CGSession -suspend\" "
Распространенной причиной странных ошибок являются пробелы в путевых именах. Так что это было мое первое предположение, что это вызывает проблемы в вашем сценарии. Потом я вспомнил, что иногда нам приходится «спасаться от побега обратным слешем». Эта статья не объясняет, почему именно она решила вашу проблему, но показывает, сколько может потребоваться обратной косой черты ...