2015-06-11 5 views
1

В настоящее время я создаю приложение ApplescriptObjC. Всякий раз, когда я пытаюсь использовать другие методы, он завинчивается. Я пытаюсь настроить его там, где сценарий оболочки использует команду mv для перемещения файла из каталога «Файлы» в папку/usr/bin /. Я думаю, что это будет немного похоже на: do shell script "sudo mv " & path & "/Files/ /usr/bin/", где путь будет для меня дорогой. Я пробовал путь ко мне и posix и другие вещи, просто не работает. ! [В папке «Файлы» содержится файл, который я хочу переместить в/usr/bin]. Изображение, где находится папка: http://i.stack.imgur.com/jUX6w.pngApplescriptObjC Путь к папке

ответ

0

Прежде всего папка Files на скриншоте - это виртуальная папка в Xcode (желтый). Вам нужно создать настоящую папку (синий). Самый простой способ, это перетащить папку в Finder в Xcode боковой панели и выберите «Создать ссылки папки»

Чтобы использовать sudo в AppleScript добавить with administrator privileges к do shell script линии. Вам будет предложено ввести пароль администратора.

Этот код перемещает (!) Файлы на /usr/bin. Если вы хотите скопировать (дублировать) файлы, используйте cp -r вместо mv

set filesFolder to (current application's NSBundle's mainBundle()'s resourcePath()'s stringByAppendingPathComponent:"Languages") as text 
    tell application "System Events" to set filesToMove to name of files of folder filesFolder 
    repeat with aFile in filesToMove 
    do shell script "/bin/mv " & quoted form of (filesFolder & "/" & aFile) & space & "/usr/bin/" with administrator privileges 
    end repeat 
Смежные вопросы