Я пытаюсь создать базовое приложение, которое будет использоваться на нескольких машинах с переменными именами домашних папок, которые создадут каталог и скопируют содержимое папки в местоположении A в этот новый каталог. Каталог важна, так как он должен находиться в папке «Библиотека пользователя».AppleScript работает Shell Script: проблемы с разрешениями с mkdir и cp
#!/bin/sh
moveFile="$HOME/Desktop/Updater/Test Folder 1/test.txt"
newFolder="$HOME/Desktop/Updater/Test Folder 2"
mkdir "$newFolder"
cp "$moveFile" "$newFolder"
При создании кишок его с помощью скрипта оболочки я могу просто запустить сценарий в терминале. Однако, когда я использую AppleScript для вызова скрипта, он будет говорить, что разрешение будет отказано:
do shell script "bash $HOME/Desktop/Updater/updater.sh" with administrator privileges
cp: $HOME/Desktop/Updater/Test Folder 2/test.txt: Permission denied
Очевидно, чтобы обойти эту проблему я буду добавлять привилегии администратора:
do shell script "bash $HOME/Desktop/Updater/updater.sh" with administrator privileges
Проблема с этим , заключается в том, что он будет изменять разрешения папки и файла на файлы системы. Это нарушает другую часть другого приложения, которое использует эти перемещенные файлы, поскольку разрешения пользователя были удалены и заменены с помощью системы.
Мой вопрос заключается в следующем: как я могу гарантировать, что выполнение сценария оболочки AppleScript не отменяет мои права на копирование файлов из одного места в другое?