
На основе этого постаКак добавить файл в iTunes из командной строки, не воспроизводя его?что работает, я хочу добавить несколько файлов, а не один.
Я попробовал добавить цикл и поиск:
for f in ./*.m4a; do osascript -e \
"tell application \"iTunes\" to add "$f" Posix file; done
# Or...
find /Users/filedirectory\
-type f -name "*.m4a" \
-osascript -e "tell application \"iTunes\" to add Posix file {}; done
Терминал выдает >
без ошибок.
решение1
AppleScript требует, чтобы пути POSIX были заключены в кавычки, а пути для iTunes должны быть полными именами.
Для команды shell for
путь должен быть полным, поэтому pwd
. $f
необходимо заключать в кавычки:
for f in "`pwd`"/*.m4a; do osascript -e \
"tell application \"iTunes\" to add Posix file \"$f\""; done
Для find
версии (без слова «готово» в конце) процитируйте следующее {}
:
find /Users/filedirectory \
-type f -name "*.m4a" \
-exec osascript -e "tell application \"iTunes\" to add Posix file \"{}\"" \;
Используйте pwd
для поиска файлов в текущем каталоге. После pwd
, остальная часть команды та же самая.
find "`pwd`" -type f ...
Каждый файл, добавленный в iTunes, будет отображать такую строку:
file track id 142123 of library playlist id 25858 of source id 65