Текущий скрипт, который я использую для получения пути к файлу для одиночного выбора в поиске:
tell application "Finder"
set thepath to selection as text
set pospath to quoted form of the POSIX path of thepath
end tell
Это дает мне путь, как это: '/Users/lawsome/Desktop/jan-study/untitled folder/'
Этот формат пути работает для передачи одного пути к файлу для дальнейших действий, таких как перемещение или удаление выбранного файла.
Когда я пытаюсь один и тот же скрипт для нескольких выборов в поисковике, я получаю такой результат:
'/Users/lawsome/Desktop/Business Org Feedback.pdfMacintosh HD/Users/lawsome/Desktop/Top 10Macintosh HD/Users/lawsome/Desktop/Follow_Up_letters_Samples.pdfMacintosh HD/Users/lawsome/Desktop/Learn Outlook Tips.txtMacintosh HD/Users/lawsome/Desktop/OutlookTips.pdf'
Этот результат не работает для меня. Я пытаюсь достичь нескольких путей для выбранных элементов поиска для дальнейших действий.
Если я перетаскиваю несколько файлов в терминале, он показывает путь к файлу в другом формате, и это работает для дальнейших действий. Как я могу получить путь правильно через скрипт или через терминальную команду.
источник
set destpath to "~/.trash" do shell script "mv " & thePathFilename & " " & destpath
. Это сработало.tell application "Finder" to move selection to trash
никакой другой код не требуется, без обработки ошибок в зависимости от ситуации. То же самое относится и к перемещению файлов,selection
не обязательно разбивать их наrepeat
циклы, например,set thisLocation to POSIX file "/path/to/folder/" as alias
и затемtell application "Finder" to move selection to thisLocation -- with replacing
, раскомментируя (удаляя--
), если вы хотите перезаписать существующие элементы. Опять же, без обработки ошибок при необходимости.