使用 Applescript 在 iTunes 中搜索和删除特定曲目

Posted

技术标签:

【中文标题】使用 Applescript 在 iTunes 中搜索和删除特定曲目【英文标题】:Search and delete a particular track in iTunes using Applescript 【发布时间】:2014-02-02 23:07:17 【问题描述】:

我正在使用 iTunes 将一个大的 .aif 文件转换为一个小得多的 .mp3 文件。文件名每天都在更改,因为我将日期添加到名称中。因此,名为“abcxyz 2-2-2014”的文件在 iTunes 中被转换。转换后,我想从 iTunes 中删除它。我正在尝试使用 Applescript 搜索文件并将其删除。我正在尝试这个:

on deleteTrack(trackName)
tell application "iTunes"
    set theTrack to track named trackName of playlist "Library"
    set songFile to location of theTrack
    delete theTrack
end tell
tell application "Finder" to delete songFile
end deleteTrack

on run
   tell application "iTunes"
        set result to (file tracks whose name contains "abcxyz")
        repeat with t in result
            deleteTrack(name of t as string)
        end repeat
   end tell
end run

我发现 deleteTrack 例程如果你传递一个这样的字符串就可以完美运行:

on run
   deleteTrack("abcxyz 2-2-2014")
end run

但这要求我知道曲目的确切名称,而我不知道。我得到的错误是“无法继续 deleteTrack”..在 Applescript 编辑器中选择了 deleteTrack(name of t as string) 行。

感谢您的帮助。

【问题讨论】:

【参考方案1】:

您应该重新阅读有关 AppleScript 处理程序的材料。因为您的处理程序调用位于告诉应用程序“iTunes”块内,AppleScript 正在 iTunes 中查找 deleteTrack。试试这个:

my deleteTrack(name of t as string)

【讨论】:

做到了。谢谢! 不客气。点击复选标记接受我的回答,以便其他用户知道您的问题已解决。

以上是关于使用 Applescript 在 iTunes 中搜索和删除特定曲目的主要内容,如果未能解决你的问题,请参考以下文章

Applescript 在 iTunes 中超时

AppleScript 使用文本文件作为源将 iTunes 中的多个曲目添加到播放列表中

用于在iTunes中登录多个帐户的Applescript

Applescript 激活关闭的窗口

用于刷新单个 iTunes 播客的 Applescript 代码

基本的 iTunes AppleScript 问题